Merge pull request #69 from MultiCraftProject/new

Merge Minetest 0.4.15
master
Maksim Gamarnik 2017-03-11 21:53:29 +02:00 committed by GitHub
commit 4b1305d93b
336 changed files with 38309 additions and 18060 deletions

4
.gitignore vendored
View File

@ -23,6 +23,7 @@ tags
gtags.files
# OS X
.DS_Store
.idea/*
# GNU Patch reject file
*.rej
@ -61,6 +62,8 @@ locale/
*.layout
*.o
*.a
*.ninja
.ninja*
## Android build files
build/android/src/main/assets
@ -86,3 +89,4 @@ build/iOS/deps/*
build/iOS/assets.zip
build/iOS/worlds.zip
build/iOS/Ads
po/ca/MultiCraft.po

View File

@ -1,14 +1,4 @@
language: cpp
compiler:
- gcc
- clang
os:
- osx
- linux
env:
- PLATFORM=Win32
- PLATFORM=Win64
- PLATFORM=Unix
before_install: ./util/travis/before_install.sh
script: ./util/travis/script.sh
sudo: required
@ -16,14 +6,26 @@ notifications:
email: false
matrix:
fast_finish: true
exclude:
include:
- env: PLATFORM=Win32
compiler: clang
compiler: gcc
os: linux
- env: PLATFORM=Win64
compiler: gcc
os: linux
- env: PLATFORM=Unix COMPILER=clang
compiler: clang
- env: PLATFORM=Win32
os: osx
- env: PLATFORM=Win64
os: osx
- compiler: gcc
os: osx
- env: PLATFORM=Unix COMPILER=g++
compiler: gcc
os: linux
- env: PLATFORM=Unix COMPILER=clang
compiler: clang
os: linux
- env: PLATFORM=Unix COMPILER=g++-6
compiler: gcc
os: linux
addons:
apt:
sources: &sources
- ubuntu-toolchain-r-test

View File

@ -13,7 +13,7 @@ set(PROJECT_NAME_CAPITALIZED "MultiCraft")
# Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
set(VERSION_MAJOR 1)
set(VERSION_MINOR 1)
set(VERSION_PATCH 4)
set(VERSION_PATCH 7)
set(VERSION_EXTRA "" CACHE STRING "Stuff to append to version string")
# Change to false for releases
@ -163,6 +163,7 @@ install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/fonts" DESTINATION "${SHAREDIR}")
install(FILES "README.md" DESTINATION "${DOCDIR}")
install(FILES "doc/lua_api.txt" DESTINATION "${DOCDIR}")
install(FILES "doc/menu_lua_api.txt" DESTINATION "${DOCDIR}")
install(FILES "doc/texture_packs.txt" DESTINATION "${DOCDIR}")
install(FILES "doc/world_format.txt" DESTINATION "${DOCDIR}")
install(FILES "multicraft.conf.example" DESTINATION "${EXAMPLE_CONF_DIR}")
@ -171,6 +172,10 @@ if(UNIX AND NOT APPLE)
install(FILES "misc/MultiCraft.desktop" DESTINATION "${XDG_APPS_DIR}")
install(FILES "misc/MultiCraft.appdata.xml" DESTINATION "${APPDATADIR}")
install(FILES "misc/MultiCraft.svg" DESTINATION "${ICONDIR}/hicolor/scalable/apps")
# ToDo
install(FILES "misc/minetest-xorg-icon-128.png"
DESTINATION "${ICONDIR}/hicolor/128x128/apps"
RENAME "minetest.png")
endif()
if(APPLE)
@ -187,7 +192,7 @@ add_subdirectory(src)
# CPack
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "An InfiniMiner/Minecraft inspired game")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "An Minecraft inspired game")
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})

View File

@ -113,21 +113,6 @@ LUAJIT_TIMESTAMP = $(LUAJIT_DIR)/timestamp
LUAJIT_TIMESTAMP_INT = $(ANDR_ROOT)/deps/luajit_timestamp
LUAJIT_URL_GIT = https://github.com/LuaJIT/LuaJIT.git
# not used now
MPIR_DIR = $(ANDR_ROOT)/deps/mpir
MPIR_LIB = $(MPIR_DIR)/usr/local/lib/libmpir.a
MPIR_TIMESTAMP = $(MPIR_DIR)/timestamp
MPIR_TIMESTAMP_INT = $(ANDR_ROOT)/deps/mpir_timestamp
MPIR_URL_GIT = https://github.com/wbhart/mpir
# not used now
OPENSSL_VERSION = 1.0.2h
OPENSSL_DIR = $(ANDR_ROOT)/deps/openssl
OPENSSL_LIB = $(OPENSSL_DIR)/libssl.so.1.0.0
OPENSSL_TIMESTAMP = $(OPENSSL_DIR)/timestamp
OPENSSL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/openssl_timestamp
OPENSSL_URL = https://www.openssl.org/source/openssl-$(OPENSSL_VERSION).tar.gz
################################################################################
ANDROID_SDK = $(shell grep '^sdk\.dir' local.properties | sed 's/^.*=[[:space:]]*//')
@ -202,9 +187,10 @@ $(OPENAL_LIB): $(OPENAL_TIMESTAMP)
echo "changed timestamp for openal detected building..."; \
cd ${OPENAL_DIR}; \
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} APP_ABI=${TARGET_ABI} \
TARGET_ARCH_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
PRIVATE_CC=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}gcc \
PRIVATE_CXX=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}g++ \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
@ -248,7 +234,8 @@ $(VORBIS_LIB): $(VORBIS_TIMESTAMP)
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
PRIVATE_CC=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}gcc \
PRIVATE_CXX=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}g++ \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
@ -261,57 +248,6 @@ $(VORBIS_LIB): $(VORBIS_TIMESTAMP)
clean_vorbis :
$(RM) -rf ${VORBIS_DIR}
$(OPENSSL_TIMESTAMP) : openssl_download
@LAST_MODIF=$$(find ${OPENSSL_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
touch ${OPENSSL_TIMESTAMP}; \
fi
openssl_download :
@if [ ! -d ${OPENSSL_DIR} ] ; then \
echo "openssl sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \
cd ${ANDR_ROOT}/deps; \
wget ${OPENSSL_URL} || exit 1; \
tar -xzf openssl-$(OPENSSL_VERSION).tar.gz; \
$(RM) -rf $(ANDR_ROOT)/deps/openssl-$(OPENSSL_VERSION).tar.gz; \
mv openssl-$(OPENSSL_VERSION) openssl; \
fi
openssl : $(OPENSSL_LIB)
$(OPENSSL_LIB): $(OPENSSL_TIMESTAMP) $(MPIR_LIB)
@REFRESH=0; \
if [ ! -e ${OPENSSL_TIMESTAMP_INT} ] ; then \
echo "${OPENSSL_TIMESTAMP_INT} doesn't exist"; \
REFRESH=1; \
fi; \
if [ ${OPENSSL_TIMESTAMP} -nt ${OPENSSL_TIMESTAMP_INT} ] ; then \
REFRESH=1; \
fi; \
if [ $$REFRESH -ne 0 ] ; then \
echo "changed timestamp for openssl detected building..."; \
cd ${OPENSSL_DIR}; \
export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-openssl; \
${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--install-dir=$${TOOLCHAIN} --platform=${APP_PLATFORM}; \
export PATH="$${TOOLCHAIN}/bin:$${PATH}"; \
CC=${CROSS_PREFIX}gcc ./Configure no-ssl2 no-ssl3 no-hw enable-gmp \
-DL_ENDIAN -I${MPIR_DIR} -L${MPIR_DIR}/usr/lib android-${TARGET_ARCH}; \
CC=${CROSS_PREFIX}gcc ANDROID_DEV=/tmp/ndk-${TARGET_HOST} make depend; \
CC=${CROSS_PREFIX}gcc ANDROID_DEV=/tmp/ndk-${TARGET_HOST} make build_libs; \
touch ${OPENSSL_TIMESTAMP}; \
touch ${OPENSSL_TIMESTAMP_INT}; \
$(RM) -rf $${TOOLCHAIN}; \
else \
echo "nothing to be done for openssl"; \
fi
clean_openssl :
$(RM) -rf deps/openssl-$(OPENSSL_VERSION).tar.gz; \
$(RM) -rf deps/openssl
$(LEVELDB_TIMESTAMP) : leveldb_download
@LAST_MODIF=$$(find ${LEVELDB_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
@ -345,15 +281,16 @@ $(LEVELDB_LIB): $(LEVELDB_TIMESTAMP)
export CROSS_PREFIX=${CROSS_PREFIX}; \
export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-leveldb; \
${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--platform=${APP_PLATFORM} --install-dir=$${TOOLCHAIN}; \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--platform=${APP_PLATFORM} \
--install-dir=$${TOOLCHAIN}; \
export PATH="$${TOOLCHAIN}/bin:$${PATH}"; \
export CC=${CROSS_PREFIX}gcc; \
export CXX=${CROSS_PREFIX}g++; \
export TARGET_OS=OS_ANDROID_CROSSCOMPILE; \
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
$(MAKE) || exit 1; \
touch ${LEVELDB_TIMESTAMP}; \
touch ${LEVELDB_TIMESTAMP_INT}; \
@ -508,8 +445,12 @@ $(IRRLICHT_LIB): $(IRRLICHT_TIMESTAMP) $(FREETYPE_LIB)
cd deps/irrlicht/source/Irrlicht/Android; \
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} || exit 1; \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
PRIVATE_CC=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}gcc \
PRIVATE_CXX=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}g++ \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
touch ${IRRLICHT_TIMESTAMP}; \
touch ${IRRLICHT_TIMESTAMP_INT}; \
else \
@ -538,7 +479,6 @@ curl_download :
curl : $(CURL_LIB)
#$(CURL_LIB): $(CURL_TIMESTAMP) $(OPENSSL_LIB)
$(CURL_LIB): $(CURL_TIMESTAMP)
@REFRESH=0; \
if [ ! -e ${CURL_TIMESTAMP_INT} ] ; then \
@ -557,17 +497,18 @@ $(CURL_LIB): $(CURL_TIMESTAMP)
export CROSS_PREFIX=${CROSS_PREFIX}; \
export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-curl; \
${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--platform=${APP_PLATFORM} --install-dir=$${TOOLCHAIN}; \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--platform=${APP_PLATFORM} \
--install-dir=$${TOOLCHAIN}; \
export PATH="$${TOOLCHAIN}/bin:$${PATH}"; \
export CC=${CROSS_PREFIX}gcc; \
export CXX=${CROSS_PREFIX}g++; \
export TARGET_OS=OS_ANDROID_CROSSCOMPILE; \
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON} -fno-lto"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON} -fno-lto"; \
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON} -fno-lto"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON} -fno-lto"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
# export CPPFLAGS="$${CPPFLAGS} -I${OPENSSL_DIR}/include \
# export LDFLAGS="$${LDFLAGS} -L${OPENSSL_DIR} ${TARGET_LDFLAGS_ADDON}"; \
# export CPPFLAGS="$${CPPFLAGS} \
# export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
# ./configure --host=${TARGET_HOST} --enable-static --disable-shared --with-ssl; \
./configure --host=${TARGET_HOST} --enable-static --disable-shared; \
$(MAKE) -s || exit 1; \
@ -581,57 +522,6 @@ $(CURL_LIB): $(CURL_TIMESTAMP)
clean_curl :
$(RM) -R ${CURL_DIR}
$(MPIR_TIMESTAMP) : mpir_download
@LAST_MODIF=$$(find ${MPIR_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
touch ${MPIR_TIMESTAMP}; \
fi
mpir_download :
@if [ ! -d "${MPIR_DIR}" ] ; then \
echo "mpir sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \
cd deps; \
git clone ${MPIR_URL_GIT} || exit 1; \
fi
mpir : $(MPIR_LIB)
$(MPIR_LIB): $(MPIR_TIMESTAMP)
@REFRESH=0; \
if [ ! -e ${MPIR_TIMESTAMP_INT} ] ; then \
REFRESH=1; \
fi; \
if [ ! -e ${MPIR_LIB} ] ; then \
REFRESH=1; \
fi; \
if [ ${MPIR_TIMESTAMP} -nt ${MPIR_TIMESTAMP_INT} ] ; then \
REFRESH=1; \
fi; \
if [ $$REFRESH -ne 0 ] ; then \
mkdir -p ${MPIR_DIR}; \
echo "changed timestamp for mpir detected building..."; \
cd deps/mpir; \
export CROSS_PREFIX=${CROSS_PREFIX}; \
export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-mpir; \
${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
--platform=${APP_PLATFORM} --install-dir=$${TOOLCHAIN} ; \
export PATH="$${TOOLCHAIN}/bin:$${PATH}"; \
export CC=${CROSS_PREFIX}gcc; \
export CXX=${CROSS_PREFIX}g++; \
./configure --enable-static --disable-shared --host=${TARGET_HOST}; \
$(MAKE) install DESTDIR=/${MPIR_DIR} || exit 1; \
touch ${MPIR_TIMESTAMP}; \
touch ${MPIR_TIMESTAMP_INT}; \
$(RM) -rf $${TOOLCHAIN}; \
else \
echo "nothing to be done for mpir"; \
fi
clean_mpir:
$(RM) -R deps/mpir
sqlite3_download :
@if [ ! -d ${SQLITE3_DIR} ] ; then \
echo "sqlite3 sources missing, downloading..."; \
@ -781,15 +671,19 @@ assets : $(ASSETS_TIMESTAMP)
clean_assets :
@$(RM) -r ${APP_ROOT}/assets
# $(MPIR_LIB)
apk: local.properties $(IRRLICHT_LIB) $(CURL_LIB) $(LEVELDB_LIB) $(LUAJIT_LIB) \
$(OPENAL_LIB) $(VORBIS_LIB) prep_srcdir $(ANDR_ROOT)/jni/src/android_version.h \
$(ANDR_ROOT)/jni/src/android_version_githash.h sqlite3_download intl_download iconv_download assets
+@${ANDROID_NDK}/ndk-build NDK_MODULE_PATH=${NDK_MODULE_PATH} \
GPROF=${GPROF} APP_ABI=${TARGET_ABI} \
APP_PLATFORM=${APP_PLATFORM} \
PRIVATE_CC=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}gcc \
PRIVATE_CXX=${NDK_MODULE_PATH}/${TARGET_TOOLCHAIN}-${COMPILER_VERSION}/prebuilt/linux-x86_64/bin/${TARGET_TOOLCHAIN}g++ \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
TARGET_LIBDIR=${TARGET_LIBDIR} && \
TARGET_LIBDIR=${TARGET_LIBDIR} \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
if [ ! -e ${APP_ROOT}/jniLibs ]; then \
ln -s ${ANDR_ROOT}/libs ${APP_ROOT}/jniLibs || exit 1; \
fi; \

View File

@ -86,7 +86,7 @@ endif
LOCAL_C_INCLUDES := \
jni/src \
jni/src/script \
jni/src/json \
jni/src/jsoncpp \
jni/src/cguittfont \
jni/src/gmp \
deps/irrlicht/include \
@ -156,6 +156,7 @@ LOCAL_SRC_FILES := \
jni/src/log.cpp \
jni/src/main.cpp \
jni/src/map.cpp \
jni/src/map_settings_manager.cpp \
jni/src/mapblock.cpp \
jni/src/mapblock_mesh.cpp \
jni/src/mapgen.cpp \
@ -189,6 +190,8 @@ LOCAL_SRC_FILES := \
jni/src/porting.cpp \
jni/src/profiler.cpp \
jni/src/quicktune.cpp \
jni/src/reflowscan.cpp \
jni/src/remoteplayer.cpp \
jni/src/rollback.cpp \
jni/src/rollback_interface.cpp \
jni/src/serialization.cpp \
@ -211,6 +214,7 @@ LOCAL_SRC_FILES := \
jni/src/util/auth.cpp \
jni/src/util/base64.cpp \
jni/src/util/directiontables.cpp \
jni/src/util/enriched_string.cpp \
jni/src/util/numeric.cpp \
jni/src/util/pointedthing.cpp \
jni/src/util/serialize.cpp \
@ -225,7 +229,9 @@ LOCAL_SRC_FILES := \
jni/src/client/clientlauncher.cpp \
jni/src/client/tile.cpp \
jni/src/util/sha256.c \
jni/src/gmp/mini-gmp.c
jni/src/gmp/mini-gmp.c \
jni/src/client/joystick_controller.cpp \
jni/src/irrlicht_changes/static_text.cpp
# Network
LOCAL_SRC_FILES += \
@ -293,7 +299,7 @@ LOCAL_SRC_FILES += \
jni/src/threading/thread.cpp
# JSONCPP
LOCAL_SRC_FILES += jni/src/json/jsoncpp.cpp
LOCAL_SRC_FILES += jni/src/jsoncpp/json/jsoncpp.cpp
# libiconv
LOCAL_CFLAGS += -Wno-multichar -D_ANDROID -DLIBDIR -DBUILDING_LIBICONV

View File

@ -7,6 +7,12 @@
objects = {
/* Begin PBXBuildFile section */
4B0F49C91E424F910003953D /* map_settings_manager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49C81E424F910003953D /* map_settings_manager.cpp */; };
4B0F49CB1E424FAE0003953D /* reflowscan.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49CA1E424FAE0003953D /* reflowscan.cpp */; };
4B0F49CD1E424FC20003953D /* remoteplayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49CC1E424FC20003953D /* remoteplayer.cpp */; };
4B0F49CF1E424FDF0003953D /* enriched_string.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49CE1E424FDF0003953D /* enriched_string.cpp */; };
4B0F49D11E424FFD0003953D /* joystick_controller.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49D01E424FFD0003953D /* joystick_controller.cpp */; };
4B0F49D31E42501D0003953D /* static_text.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0F49D21E42501D0003953D /* static_text.cpp */; };
EB4367AE23CAD13A43ADF4B1 /* libPods-MultiCraft.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8758CE009FCB7E91F4C84C28 /* libPods-MultiCraft.a */; };
F81F6BE51DDC7D99000B9E21 /* libintl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F81F6BE41DDC7D99000B9E21 /* libintl.a */; };
F84D3A951DE79AB400ADE1A0 /* ads.mm in Sources */ = {isa = PBXBuildFile; fileRef = F84D3A941DE79AB400ADE1A0 /* ads.mm */; };
@ -212,6 +218,12 @@
/* Begin PBXFileReference section */
1E76DCA01B51A98F0CA4C480 /* Pods-MultiCraft.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MultiCraft.release.xcconfig"; path = "../Pods/Target Support Files/Pods-MultiCraft/Pods-MultiCraft.release.xcconfig"; sourceTree = "<group>"; };
32528F14AAB9EA0E9CAB8526 /* Pods-MultiCraft.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MultiCraft.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-MultiCraft/Pods-MultiCraft.debug.xcconfig"; sourceTree = "<group>"; };
4B0F49C81E424F910003953D /* map_settings_manager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = map_settings_manager.cpp; path = ../../../../src/map_settings_manager.cpp; sourceTree = "<group>"; };
4B0F49CA1E424FAE0003953D /* reflowscan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = reflowscan.cpp; path = ../../../../src/reflowscan.cpp; sourceTree = "<group>"; };
4B0F49CC1E424FC20003953D /* remoteplayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = remoteplayer.cpp; path = ../../../../src/remoteplayer.cpp; sourceTree = "<group>"; };
4B0F49CE1E424FDF0003953D /* enriched_string.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = enriched_string.cpp; path = ../../../../src/util/enriched_string.cpp; sourceTree = "<group>"; };
4B0F49D01E424FFD0003953D /* joystick_controller.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = joystick_controller.cpp; path = ../../../../src/client/joystick_controller.cpp; sourceTree = "<group>"; };
4B0F49D21E42501D0003953D /* static_text.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = static_text.cpp; path = ../../../../src/irrlicht_changes/static_text.cpp; sourceTree = "<group>"; };
8758CE009FCB7E91F4C84C28 /* libPods-MultiCraft.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MultiCraft.a"; sourceTree = BUILT_PRODUCTS_DIR; };
F81F6BE41DDC7D99000B9E21 /* libintl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libintl.a; path = ../deps/intl/libintl.a; sourceTree = "<group>"; };
F84D3A931DE79AB400ADE1A0 /* ads.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ads.h; path = ../../Ads/ads.h; sourceTree = "<group>"; };
@ -484,8 +496,8 @@
F8E6C66E1DCA403100F64426 /* tile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = tile.h; path = ../../../../src/client/tile.h; sourceTree = "<group>"; };
F8E6C6721DCA405000F64426 /* mini-gmp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "mini-gmp.c"; path = "../../../../src/gmp/mini-gmp.c"; sourceTree = "<group>"; };
F8E6C6731DCA405000F64426 /* mini-gmp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "mini-gmp.h"; path = "../../../../src/gmp/mini-gmp.h"; sourceTree = "<group>"; };
F8E6C6761DCA407400F64426 /* json.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = json.h; path = ../../../../src/json/json.h; sourceTree = "<group>"; };
F8E6C6771DCA407400F64426 /* jsoncpp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = jsoncpp.cpp; path = ../../../../src/json/jsoncpp.cpp; sourceTree = "<group>"; };
F8E6C6761DCA407400F64426 /* json.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = json.h; path = ../../../../src/jsoncpp/json/json.h; sourceTree = "<group>"; };
F8E6C6771DCA407400F64426 /* jsoncpp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = jsoncpp.cpp; path = ../../../../src/jsoncpp/json/jsoncpp.cpp; sourceTree = "<group>"; };
F8E6C6D31DCA413A00F64426 /* clientopcodes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = clientopcodes.cpp; path = ../../../../src/network/clientopcodes.cpp; sourceTree = "<group>"; };
F8E6C6D41DCA413A00F64426 /* clientopcodes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = clientopcodes.h; path = ../../../../src/network/clientopcodes.h; sourceTree = "<group>"; };
F8E6C6D51DCA413A00F64426 /* clientpackethandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = clientpackethandler.cpp; path = ../../../../src/network/clientpackethandler.cpp; sourceTree = "<group>"; };
@ -791,6 +803,7 @@
F8E6C5351DCA3F9900F64426 /* dungeongen.h */,
F8E6C5361DCA3F9900F64426 /* emerge.cpp */,
F8E6C5371DCA3F9900F64426 /* emerge.h */,
4B0F49CE1E424FDF0003953D /* enriched_string.cpp */,
F8E6C5381DCA3F9900F64426 /* environment.cpp */,
F8E6C5391DCA3F9900F64426 /* environment.h */,
F8E6C53A1DCA3F9900F64426 /* event_manager.h */,
@ -852,6 +865,7 @@
F8E6C5711DCA3F9900F64426 /* itemdef.cpp */,
F8E6C5721DCA3F9900F64426 /* itemdef.h */,
F8E6C5731DCA3F9900F64426 /* itemgroup.h */,
4B0F49D01E424FFD0003953D /* joystick_controller.cpp */,
F8E6C6751DCA405F00F64426 /* json */,
F8E6C5741DCA3F9900F64426 /* keycode.cpp */,
F8E6C5751DCA3F9900F64426 /* keycode.h */,
@ -890,6 +904,7 @@
F8E6C5961DCA3F9900F64426 /* mapnode.h */,
F8E6C5971DCA3F9900F64426 /* mapsector.cpp */,
F8E6C5981DCA3F9900F64426 /* mapsector.h */,
4B0F49C81E424F910003953D /* map_settings_manager.cpp */,
F8E6C5991DCA3F9900F64426 /* mesh.cpp */,
F8E6C59A1DCA3F9900F64426 /* mesh.h */,
F8E6C59B1DCA3F9900F64426 /* mg_biome.cpp */,
@ -936,6 +951,8 @@
F8E6C5C31DCA3F9900F64426 /* quicktune_shortcutter.h */,
F8E6C5C41DCA3F9900F64426 /* quicktune.cpp */,
F8E6C5C51DCA3F9900F64426 /* quicktune.h */,
4B0F49CA1E424FAE0003953D /* reflowscan.cpp */,
4B0F49CC1E424FC20003953D /* remoteplayer.cpp */,
F8E6C5C61DCA3F9900F64426 /* rollback_interface.cpp */,
F8E6C5C71DCA3F9900F64426 /* rollback_interface.h */,
F8E6C6E41DCA415800F64426 /* script */,
@ -963,6 +980,7 @@
F8E6C5DD1DCA3F9900F64426 /* sound.h */,
F8E6C5DE1DCA3F9900F64426 /* staticobject.cpp */,
F8E6C5DF1DCA3F9900F64426 /* staticobject.h */,
4B0F49D21E42501D0003953D /* static_text.cpp */,
F8E6C5E01DCA3F9900F64426 /* subgame.cpp */,
F8E6C5E11DCA3F9900F64426 /* subgame.h */,
F8E6C5E21DCA3F9900F64426 /* terminal_chat_console.cpp */,
@ -1365,6 +1383,7 @@
F8E6C4F51DCA3EA400F64426 /* ioswrap.m in Sources */,
F8E6C65B1DCA3F9900F64426 /* subgame.cpp in Sources */,
F8E6C6351DCA3F9900F64426 /* mapgen_valleys.cpp in Sources */,
4B0F49D11E424FFD0003953D /* joystick_controller.cpp in Sources */,
F8E6C6101DCA3F9900F64426 /* environment.cpp in Sources */,
F8E6C64E1DCA3F9900F64426 /* rollback_interface.cpp in Sources */,
F84D3A951DE79AB400ADE1A0 /* ads.mm in Sources */,
@ -1468,12 +1487,14 @@
F8E6C6EC1DCA41A600F64426 /* scripting_game.cpp in Sources */,
F8E6C6071DCA3F9900F64426 /* database-leveldb.cpp in Sources */,
F8E6C6421DCA3F9900F64426 /* nodemetadata.cpp in Sources */,
4B0F49CB1E424FAE0003953D /* reflowscan.cpp in Sources */,
F8E6C6111DCA3F9900F64426 /* filecache.cpp in Sources */,
F8E6C7BC1DCA428800F64426 /* pointedthing.cpp in Sources */,
F8E6C62A1DCA3F9900F64426 /* log.cpp in Sources */,
F8E6C74C1DCA420A00F64426 /* l_item.cpp in Sources */,
F8E6C6521DCA3F9900F64426 /* serverlist.cpp in Sources */,
F8E6C6231DCA3F9900F64426 /* intlGUIEditBox.cpp in Sources */,
4B0F49CD1E424FC20003953D /* remoteplayer.cpp in Sources */,
F8E6C5FB1DCA3F9900F64426 /* clientobject.cpp in Sources */,
F8E6C63A1DCA3F9900F64426 /* mg_biome.cpp in Sources */,
F8E6C7661DCA423C00F64426 /* semaphore.cpp in Sources */,
@ -1493,6 +1514,8 @@
F8E6C7501DCA420A00F64426 /* l_nodetimer.cpp in Sources */,
F8E6C6141DCA3F9900F64426 /* game.cpp in Sources */,
F8E6C6051DCA3F9900F64426 /* craftdef.cpp in Sources */,
4B0F49CF1E424FDF0003953D /* enriched_string.cpp in Sources */,
4B0F49D31E42501D0003953D /* static_text.cpp in Sources */,
F8E6C6091DCA3F9900F64426 /* database-sqlite3.cpp in Sources */,
F8E6C6411DCA3F9900F64426 /* nodedef.cpp in Sources */,
F8E6C6F81DCA41DB00F64426 /* c_internal.cpp in Sources */,
@ -1510,6 +1533,7 @@
F8E6C6251DCA3F9900F64426 /* inventorymanager.cpp in Sources */,
F8E6C60C1DCA3F9900F64426 /* defaultsettings.cpp in Sources */,
F8E6C63B1DCA3F9900F64426 /* mg_decoration.cpp in Sources */,
4B0F49C91E424F910003953D /* map_settings_manager.cpp in Sources */,
F8E6C64D1DCA3F9900F64426 /* quicktune.cpp in Sources */,
F8E6C6451DCA3F9900F64426 /* objdef.cpp in Sources */,
F8E6C64A1DCA3F9900F64426 /* porting_ios.cpp in Sources */,

View File

@ -5,7 +5,7 @@
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>MultiCraft Free Miner!</string>
<string>MultiCraft</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
@ -17,9 +17,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.5</string>
<string>1.0.7</string>
<key>CFBundleVersion</key>
<string>9</string>
<string>12</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSAppTransportSecurity</key>

View File

@ -13,15 +13,15 @@ packagedir=$builddir/packages
libdir=$builddir/libs
toolchain_file=$dir/toolchain_mingw.cmake
irrlicht_version=1.8.1
ogg_version=1.2.1
vorbis_version=1.3.3
curl_version=7.38.0
irrlicht_version=1.8.4
ogg_version=1.3.2
vorbis_version=1.3.5
curl_version=7.50.3
gettext_version=0.14.4
freetype_version=2.3.5
sqlite3_version=3.8.7.4
luajit_version=2.0.1
leveldb_version=1.15
freetype_version=2.7
sqlite3_version=3.14.2
luajit_version=2.1.0-beta2
leveldb_version=1.18
zlib_version=1.2.8
mkdir -p $packagedir
@ -34,44 +34,38 @@ cd $builddir
-c -O $packagedir/irrlicht-$irrlicht_version.zip
[ -e $packagedir/zlib-$zlib_version.zip ] || wget http://minetest.kitsunemimi.pw/zlib-$zlib_version-win32.zip \
-c -O $packagedir/zlib-$zlib_version.zip
[ -e $packagedir/libogg-$ogg_version-dev.7z ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-dev.7z \
-c -O $packagedir/libogg-$ogg_version-dev.7z
[ -e $packagedir/libogg-$ogg_version-dll.7z ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-dll.7z \
-c -O $packagedir/libogg-$ogg_version-dll.7z
[ -e $packagedir/libvorbis-$vorbis_version-dev.7z ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-dev.7z \
-c -O $packagedir/libvorbis-$vorbis_version-dev.7z
[ -e $packagedir/libvorbis-$vorbis_version-dll.7z ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-dll.7z \
-c -O $packagedir/libvorbis-$vorbis_version-dll.7z
[ -e $packagedir/libcurl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/libcurl-$curl_version-win32.zip \
-c -O $packagedir/libcurl-$curl_version.zip
[ -e $packagedir/libogg-$ogg_version.zip ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-win32.zip \
-c -O $packagedir/libogg-$ogg_version.zip
[ -e $packagedir/libvorbis-$vorbis_version.zip ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-win32.zip \
-c -O $packagedir/libvorbis-$vorbis_version.zip
[ -e $packagedir/curl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/curl-$curl_version-win32.zip \
-c -O $packagedir/curl-$curl_version.zip
[ -e $packagedir/gettext-$gettext_version.zip ] || wget http://minetest.kitsunemimi.pw/gettext-$gettext_version.zip \
-c -O $packagedir/gettext-$gettext_version.zip
[ -e $packagedir/libfreetype-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/libfreetype-$freetype_version-win32.zip \
-c -O $packagedir/libfreetype-$freetype_version.zip
[ -e $packagedir/freetype2-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/freetype2-$freetype_version-win32.zip \
-c -O $packagedir/freetype2-$freetype_version.zip
[ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://minetest.kitsunemimi.pw/sqlite3-$sqlite3_version-win32.zip \
-c -O $packagedir/sqlite3-$sqlite3_version.zip
[ -e $packagedir/luajit-$luajit_version-static-win32.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-static-win32.zip \
-c -O $packagedir/luajit-$luajit_version-static-win32.zip
[ -e $packagedir/libleveldb-$leveldb_version-win32.zip ] || wget http://minetest.kitsunemimi.pw/libleveldb-$leveldb_version-win32.zip \
-c -O $packagedir/libleveldb-$leveldb_version-win32.zip
[ -e $packagedir/luajit-$luajit_version.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-win32.zip \
-c -O $packagedir/luajit-$luajit_version.zip
[ -e $packagedir/libleveldb-$leveldb_version.zip ] || wget http://minetest.kitsunemimi.pw/libleveldb-$leveldb_version-win32.zip \
-c -O $packagedir/libleveldb-$leveldb_version.zip
[ -e $packagedir/openal_stripped.zip ] || wget http://minetest.kitsunemimi.pw/openal_stripped.zip \
-c -O $packagedir/openal_stripped.zip
# Extract stuff
cd $libdir
[ -d irrlicht-$irrlicht_version ] || unzip -o $packagedir/irrlicht-$irrlicht_version.zip
[ -d irrlicht ] || unzip -o $packagedir/irrlicht-$irrlicht_version.zip -d irrlicht
[ -d zlib ] || unzip -o $packagedir/zlib-$zlib_version.zip -d zlib
[ -d libogg/include ] || 7z x -y -olibogg $packagedir/libogg-$ogg_version-dev.7z
[ -d libogg/bin ] || 7z x -y -olibogg $packagedir/libogg-$ogg_version-dll.7z
[ -d libvorbis/include ] || 7z x -y -olibvorbis $packagedir/libvorbis-$vorbis_version-dev.7z
[ -d libvorbis/bin ] || 7z x -y -olibvorbis $packagedir/libvorbis-$vorbis_version-dll.7z
[ -d libcurl ] || unzip -o $packagedir/libcurl-$curl_version.zip -d libcurl
[ -d libogg ] || unzip -o $packagedir/libogg-$ogg_version.zip -d libogg
[ -d libvorbis ] || unzip -o $packagedir/libvorbis-$vorbis_version.zip -d libvorbis
[ -d libcurl ] || unzip -o $packagedir/curl-$curl_version.zip -d libcurl
[ -d gettext ] || unzip -o $packagedir/gettext-$gettext_version.zip -d gettext
[ -d freetype ] || unzip -o $packagedir/libfreetype-$freetype_version.zip -d freetype
[ -d freetype ] || unzip -o $packagedir/freetype2-$freetype_version.zip -d freetype
[ -d sqlite3 ] || unzip -o $packagedir/sqlite3-$sqlite3_version.zip -d sqlite3
[ -d openal_stripped ] || unzip -o $packagedir/openal_stripped.zip
[ -d luajit ] || unzip -o $packagedir/luajit-$luajit_version-static-win32.zip -d luajit
[ -d leveldb ] || unzip -o $packagedir/libleveldb-$leveldb_version-win32.zip -d leveldb
[ -d luajit ] || unzip -o $packagedir/luajit-$luajit_version.zip -d luajit
[ -d leveldb ] || unzip -o $packagedir/libleveldb-$leveldb_version.zip -d leveldb
# Get minetest
cd $builddir
@ -81,7 +75,7 @@ else
[ -d minetest ] && (cd minetest && git pull) || (git clone https://github.com/minetest/minetest)
fi
cd minetest
git_hash=`git show | head -c14 | tail -c7`
git_hash=$(git rev-parse --short HEAD)
# Get minetest_game
cd games
@ -107,14 +101,13 @@ cmake .. \
-DENABLE_FREETYPE=1 \
-DENABLE_LEVELDB=1 \
\
-DIRRLICHT_INCLUDE_DIR=$libdir/irrlicht-$irrlicht_version/include \
-DIRRLICHT_LIBRARY=$libdir/irrlicht-$irrlicht_version/lib/Win32-gcc/libIrrlicht.dll.a \
-DIRRLICHT_DLL=$libdir/irrlicht-$irrlicht_version/bin/Win32-gcc/Irrlicht.dll \
-DIRRLICHT_INCLUDE_DIR=$libdir/irrlicht/include \
-DIRRLICHT_LIBRARY=$libdir/irrlicht/lib/Win32-gcc/libIrrlicht.dll.a \
-DIRRLICHT_DLL=$libdir/irrlicht/bin/Win32-gcc/Irrlicht.dll \
\
-DZLIB_INCLUDE_DIR=$libdir/zlib/include \
-DZLIB_LIBRARIES=$libdir/zlib/lib/zlibwapi.dll.a \
-DZLIB_LIBRARIES=$libdir/zlib/lib/libz.dll.a \
-DZLIB_DLL=$libdir/zlib/bin/zlib1.dll \
-DZLIBWAPI_DLL=$libdir/zlib/bin/zlibwapi.dll \
\
-DLUA_INCLUDE_DIR=$libdir/luajit/include \
-DLUA_LIBRARY=$libdir/luajit/libluajit.a \
@ -145,9 +138,9 @@ cmake .. \
-DGETTEXT_LIBRARY=$libdir/gettext/lib/libintl.dll.a \
\
-DFREETYPE_INCLUDE_DIR_freetype2=$libdir/freetype/include/freetype2 \
-DFREETYPE_INCLUDE_DIR_ft2build=$libdir/freetype/include \
-DFREETYPE_INCLUDE_DIR_ft2build=$libdir/freetype/include/freetype2 \
-DFREETYPE_LIBRARY=$libdir/freetype/lib/libfreetype.dll.a \
-DFREETYPE_DLL=$libdir/freetype/bin/freetype6.dll \
-DFREETYPE_DLL=$libdir/freetype/bin/libfreetype-6.dll \
\
-DSQLITE3_INCLUDE_DIR=$libdir/sqlite3/include \
-DSQLITE3_LIBRARY=$libdir/sqlite3/lib/libsqlite3.dll.a \

View File

@ -5,16 +5,16 @@ builddir="$( pwd )"
packagedir=$builddir/packages
libdir=$builddir/libs
toolchain_file=$builddir/toolchain_mingw64.cmake
irrlicht_version=1.8.1
ogg_version=1.3.1
vorbis_version=1.3.4
curl_version=7.38.0
toolchain_file=$dir/toolchain_mingw64.cmake
irrlicht_version=1.8.4
ogg_version=1.3.2
vorbis_version=1.3.5
curl_version=7.50.3
gettext_version=0.18.2
freetype_version=2.5.3
sqlite3_version=3.8.7.4
luajit_version=2.0.3
leveldb_version=1.15
freetype_version=2.7
sqlite3_version=3.14.2
luajit_version=2.1.0-beta2
leveldb_version=1.18
zlib_version=1.2.8
mkdir -p $packagedir
@ -31,15 +31,15 @@ cd $builddir
-c -O $packagedir/libogg-$ogg_version.zip
[ -e $packagedir/libvorbis-$vorbis_version.zip ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-win64.zip \
-c -O $packagedir/libvorbis-$vorbis_version.zip
[ -e $packagedir/libcurl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/libcurl-$curl_version-win64.zip \
-c -O $packagedir/libcurl-$curl_version.zip
[ -e $packagedir/curl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/curl-$curl_version-win64.zip \
-c -O $packagedir/curl-$curl_version.zip
[ -e $packagedir/gettext-$gettext_version.zip ] || wget http://minetest.kitsunemimi.pw/gettext-$gettext_version-win64.zip \
-c -O $packagedir/gettext-$gettext_version.zip
[ -e $packagedir/freetype-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/libfreetype-$freetype_version-win64.zip \
-c -O $packagedir/freetype-$freetype_version.zip
[ -e $packagedir/freetype2-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/freetype2-$freetype_version-win64.zip \
-c -O $packagedir/freetype2-$freetype_version.zip
[ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://minetest.kitsunemimi.pw/sqlite3-$sqlite3_version-win64.zip \
-c -O $packagedir/sqlite3-$sqlite3_version.zip
[ -e $packagedir/luajit-$luajit_version.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-static-win64.zip \
[ -e $packagedir/luajit-$luajit_version.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-win64.zip \
-c -O $packagedir/luajit-$luajit_version.zip
[ -e $packagedir/libleveldb-$leveldb_version.zip ] || wget http://minetest.kitsunemimi.pw/libleveldb-$leveldb_version-win64.zip \
-c -O $packagedir/libleveldb-$leveldb_version.zip
@ -49,13 +49,13 @@ cd $builddir
# Extract stuff
cd $libdir
[ -d irrlicht-$irrlicht_version ] || unzip -o $packagedir/irrlicht-$irrlicht_version.zip
[ -d irrlicht ] || unzip -o $packagedir/irrlicht-$irrlicht_version.zip -d irrlicht
[ -d zlib ] || unzip -o $packagedir/zlib-$zlib_version.zip -d zlib
[ -d libogg ] || unzip -o $packagedir/libogg-$ogg_version.zip -d libogg
[ -d libvorbis ] || unzip -o $packagedir/libvorbis-$vorbis_version.zip -d libvorbis
[ -d libcurl ] || unzip -o $packagedir/libcurl-$curl_version.zip -d libcurl
[ -d libcurl ] || unzip -o $packagedir/curl-$curl_version.zip -d libcurl
[ -d gettext ] || unzip -o $packagedir/gettext-$gettext_version.zip -d gettext
[ -d freetype ] || unzip -o $packagedir/freetype-$freetype_version.zip -d freetype
[ -d freetype ] || unzip -o $packagedir/freetype2-$freetype_version.zip -d freetype
[ -d sqlite3 ] || unzip -o $packagedir/sqlite3-$sqlite3_version.zip -d sqlite3
[ -d openal_stripped ] || unzip -o $packagedir/openal_stripped.zip
[ -d luajit ] || unzip -o $packagedir/luajit-$luajit_version.zip -d luajit
@ -80,9 +80,9 @@ cmake .. \
-DENABLE_FREETYPE=1 \
-DENABLE_LEVELDB=1 \
\
-DIRRLICHT_INCLUDE_DIR=$libdir/irrlicht-$irrlicht_version/include \
-DIRRLICHT_LIBRARY=$libdir/irrlicht-$irrlicht_version/lib/Win64-gcc/libIrrlicht.dll.a \
-DIRRLICHT_DLL=$libdir/irrlicht-$irrlicht_version/bin/Win64-gcc/Irrlicht.dll \
-DIRRLICHT_INCLUDE_DIR=$libdir/irrlicht/include \
-DIRRLICHT_LIBRARY=$libdir/irrlicht/lib/Win64-gcc/libIrrlicht.dll.a \
-DIRRLICHT_DLL=$libdir/irrlicht/bin/Win64-gcc/Irrlicht.dll \
\
-DZLIB_INCLUDE_DIR=$libdir/zlib/include \
-DZLIB_LIBRARIES=$libdir/zlib/lib/libz.dll.a \
@ -109,6 +109,13 @@ cmake .. \
-DCURL_INCLUDE_DIR=$libdir/libcurl/include \
-DCURL_LIBRARY=$libdir/libcurl/lib/libcurl.dll.a \
\
-DCUSTOM_GETTEXT_PATH=$libdir/gettext \
-DGETTEXT_MSGFMT=`which msgfmt` \
-DGETTEXT_DLL=$libdir/gettext/bin/libintl-8.dll \
-DGETTEXT_ICONV_DLL=$libdir/gettext/bin/libiconv-2.dll \
-DGETTEXT_INCLUDE_DIR=$libdir/gettext/include \
-DGETTEXT_LIBRARY=$libdir/gettext/lib/libintl.dll.a \
\
-DFREETYPE_INCLUDE_DIR_freetype2=$libdir/freetype/include/freetype2 \
-DFREETYPE_INCLUDE_DIR_ft2build=$libdir/freetype/include/freetype2 \
-DFREETYPE_LIBRARY=$libdir/freetype/lib/libfreetype.dll.a \
@ -120,14 +127,7 @@ cmake .. \
\
-DLEVELDB_INCLUDE_DIR=$libdir/leveldb/include \
-DLEVELDB_LIBRARY=$libdir/leveldb/lib/libleveldb.dll.a \
-DLEVELDB_DLL=$libdir/leveldb/bin/libleveldb.dll \
\
-DCUSTOM_GETTEXT_PATH=$libdir/gettext \
-DGETTEXT_MSGFMT=`which msgfmt` \
-DGETTEXT_DLL=$libdir/gettext/bin/libintl-8.dll \
-DGETTEXT_ICONV_DLL=$libdir/gettext/bin/libiconv-2.dll \
-DGETTEXT_INCLUDE_DIR=$libdir/gettext/include \
-DGETTEXT_LIBRARY=$libdir/gettext/lib/libintl.dll.a
-DLEVELDB_DLL=$libdir/leveldb/bin/libleveldb.dll
make package -j8

View File

@ -382,7 +382,6 @@ if INIT == "game" then
itemstack, pointed_thing)
return
end
local pitch = placer:get_look_pitch()
local fdir = core.dir_to_facedir(placer:get_look_dir())
local wield_name = itemstack:get_name()

View File

@ -5,6 +5,9 @@ local WARN_INIT = false
function core.global_exists(name)
if type(name) ~= "string" then
error("core.global_exists: " .. tostring(name) .. " is not a string")
end
return rawget(_G, name) ~= nil
end

View File

@ -31,6 +31,14 @@ function vector.normalize(v)
end
end
function vector.floor(v)
return {
x = math.floor(v.x),
y = math.floor(v.y),
z = math.floor(v.z)
}
end
function vector.round(v)
return {
x = math.floor(v.x + 0.5),
@ -130,4 +138,3 @@ function vector.divide(a, b)
z = a.z / b}
end
end

View File

@ -199,3 +199,19 @@ core.register_on_joinplayer(function(player)
record_login(player:get_player_name())
end)
core.register_on_prejoinplayer(function(name, ip)
local auth = core.auth_table
if auth[name] ~= nil then
return
end
local name_lower = name:lower()
for k in pairs(auth) do
if k:lower() == name_lower then
return string.format("\nCannot create new player called '%s'. "..
"Another account called '%s' is already registered. "..
"Please check the spelling if it's your account "..
"or use a different nickname.", name, k)
end
end
end)

View File

@ -14,19 +14,6 @@ function core.register_chatcommand(cmd, def)
core.chatcommands[cmd] = def
end
if core.setting_getbool("mod_profiling") then
local tracefct = profiling_print_log
profiling_print_log = nil
core.register_chatcommand("save_mod_profile",
{
params = "",
description = "save mod profiling data to logfile " ..
"(depends on default loglevel)",
func = tracefct,
privs = { server=true }
})
end
core.register_on_chat_message(function(name, message)
local cmd, param = string.match(message, "^/([^ ]+) *(.*)")
if not param then
@ -51,6 +38,12 @@ core.register_on_chat_message(function(name, message)
return true -- Handled chat message
end)
if core.setting_getbool("profiler.load") then
-- Run after register_chatcommand and its register_on_chat_message
-- Before any chattcommands that should be profiled
profiler.init_chatcommand()
end
-- Parses a "range" string in the format of "here (number)" or
-- "(x1, y1, z1) (x2, y2, z2)", returning two position vectors
local function parse_range_str(player_name, str)
@ -102,7 +95,7 @@ core.register_chatcommand("help", {
description = "Get help for commands or list privileges",
func = function(name, param)
local function format_help_line(cmd, def)
local msg = "/"..cmd
local msg = core.colorize("#00ffff", "/"..cmd)
if def.params and def.params ~= "" then
msg = msg .. " " .. def.params
end
@ -154,60 +147,79 @@ core.register_chatcommand("help", {
core.register_chatcommand("privs", {
params = "<name>",
description = "print out privileges of player",
func = function(name, param)
param = (param ~= "" and param or name)
return true, "Privileges of " .. param .. ": "
func = function(caller, param)
param = param:trim()
local name = (param ~= "" and param or caller)
return true, "Privileges of " .. name .. ": "
.. core.privs_to_string(
core.get_player_privs(param), ' ')
core.get_player_privs(name), ' ')
end,
})
local function handle_grant_command(caller, grantname, grantprivstr)
local caller_privs = minetest.get_player_privs(caller)
if not (caller_privs.privs or caller_privs.basic_privs) then
return false, "Your privileges are insufficient."
end
if not core.auth_table[grantname] then
return false, "Player " .. grantname .. " does not exist."
end
local grantprivs = core.string_to_privs(grantprivstr)
if grantprivstr == "all" then
grantprivs = core.registered_privileges
end
local privs = core.get_player_privs(grantname)
local privs_unknown = ""
local basic_privs =
core.string_to_privs(core.setting_get("basic_privs") or "interact,shout")
for priv, _ in pairs(grantprivs) do
if not basic_privs[priv] and not caller_privs.privs then
return false, "Your privileges are insufficient."
end
if not core.registered_privileges[priv] then
privs_unknown = privs_unknown .. "Unknown privilege: " .. priv .. "\n"
end
privs[priv] = true
end
if privs_unknown ~= "" then
return false, privs_unknown
end
core.set_player_privs(grantname, privs)
core.log("action", caller..' granted ('..core.privs_to_string(grantprivs, ', ')..') privileges to '..grantname)
if grantname ~= caller then
core.chat_send_player(grantname, caller
.. " granted you privileges: "
.. core.privs_to_string(grantprivs, ' '))
end
return true, "Privileges of " .. grantname .. ": "
.. core.privs_to_string(
core.get_player_privs(grantname), ' ')
end
core.register_chatcommand("grant", {
params = "<name> <privilege>|all",
description = "Give privilege to player",
func = function(name, param)
if not core.check_player_privs(name, {privs=true}) and
not core.check_player_privs(name, {basic_privs=true}) then
return false, "Your privileges are insufficient."
end
local grantname, grantprivstr = string.match(param, "([^ ]+) (.+)")
if not grantname or not grantprivstr then
return false, "Invalid parameters (see /help grant)"
elseif not core.auth_table[grantname] then
return false, "Player " .. grantname .. " does not exist."
end
local grantprivs = core.string_to_privs(grantprivstr)
if grantprivstr == "all" then
grantprivs = core.registered_privileges
end
local privs = core.get_player_privs(grantname)
local privs_unknown = ""
local basic_privs =
core.string_to_privs(core.setting_get("basic_privs") or "interact,shout")
for priv, _ in pairs(grantprivs) do
if not basic_privs[priv] and
not core.check_player_privs(name, {privs=true}) then
return false, "Your privileges are insufficient."
end
if not core.registered_privileges[priv] then
privs_unknown = privs_unknown .. "Unknown privilege: " .. priv .. "\n"
end
privs[priv] = true
end
if privs_unknown ~= "" then
return false, privs_unknown
end
core.set_player_privs(grantname, privs)
core.log("action", name..' granted ('..core.privs_to_string(grantprivs, ', ')..') privileges to '..grantname)
if grantname ~= name then
core.chat_send_player(grantname, name
.. " granted you privileges: "
.. core.privs_to_string(grantprivs, ' '))
end
return true, "Privileges of " .. grantname .. ": "
.. core.privs_to_string(
core.get_player_privs(grantname), ' ')
end
return handle_grant_command(name, grantname, grantprivstr)
end,
})
core.register_chatcommand("grantme", {
params = "<privilege>|all",
description = "Grant privileges to yourself",
func = function(name, param)
if param == "" then
return false, "Invalid parameters (see /help grantme)"
end
return handle_grant_command(name, name, param)
end,
})
core.register_chatcommand("revoke", {
params = "<name> <privilege>|all",
description = "Remove privilege from player",

View File

@ -4,14 +4,24 @@
-- Constants values for use with the Lua API
--
-- mapnode.h
-- Built-in Content IDs (for use with VoxelManip API)
core.CONTENT_UNKNOWN = 125
core.CONTENT_AIR = 126
core.CONTENT_IGNORE = 127
-- emerge.h
-- Block emerge status constants (for use with core.emerge_area)
core.EMERGE_CANCELLED = 0
core.EMERGE_ERRORED = 1
core.EMERGE_FROM_MEMORY = 2
core.EMERGE_FROM_DISK = 3
core.EMERGE_GENERATED = 4
-- constants.h
-- Size of mapblocks in nodes
core.MAP_BLOCKSIZE = 16
-- light.h
-- Maximum value for node 'light_source' parameter
core.LIGHT_MAX = 14

View File

@ -2,7 +2,7 @@
core.detached_inventories = {}
function core.create_detached_inventory(name, callbacks)
function core.create_detached_inventory(name, callbacks, player_name)
local stuff = {}
stuff.name = name
if callbacks then
@ -15,6 +15,6 @@ function core.create_detached_inventory(name, callbacks)
end
stuff.mod_origin = core.get_current_modname() or "??"
core.detached_inventories[name] = stuff
return core.create_detached_inventory_raw(name)
return core.create_detached_inventory_raw(name, player_name)
end

View File

@ -1,5 +1,7 @@
-- Minetest: builtin/item.lua
local builtin_shared = ...
--
-- Falling stuff
--
@ -41,19 +43,20 @@ core.register_entity(":__builtin:falling_node", {
end,
on_step = function(self, dtime)
-- Set gravity
-- Set gravity
local acceleration = self.object:getacceleration()
if not vector.equals(acceleration, {x = 0, y = -10, z = 0}) then
self.object:setacceleration({x = 0, y = -10, z = 0})
end
-- Turn to actual sand when collides to ground or just move
-- Turn to actual node when colliding with ground, or continue to move
local pos = self.object:getpos()
local bcp = {x = pos.x, y = pos.y - 0.7, z = pos.z} -- Position of bottom center point
local bcn = core.get_node(bcp)
local bcd = core.registered_nodes[bcn.name]
-- Note: walkable is in the node definition, not in item groups
if not bcd or
(bcd.walkable or
-- Position of bottom center point
local bcp = {x = pos.x, y = pos.y - 0.7, z = pos.z}
-- Avoid bugs caused by an unloaded node below
local bcn = core.get_node_or_nil(bcp)
local bcd = bcn and core.registered_nodes[bcn.name]
if bcn and
(not bcd or bcd.walkable or
(core.get_item_group(self.node.name, "float") ~= 0 and
bcd.liquidtype ~= "none")) then
if bcd and bcd.leveled and
@ -75,20 +78,20 @@ core.register_entity(":__builtin:falling_node", {
local np = {x = bcp.x, y = bcp.y + 1, z = bcp.z}
-- Check what's here
local n2 = core.get_node(np)
local nd = core.registered_nodes[n2.name]
-- If it's not air or liquid, remove node and replace it with
-- it's drops
if n2.name ~= "air" and (not core.registered_nodes[n2.name] or
core.registered_nodes[n2.name].liquidtype == "none") then
if n2.name ~= "air" and (not nd or nd.liquidtype == "none") then
core.remove_node(np)
if core.registered_nodes[n2.name].buildable_to == false then
if nd.buildable_to == false then
-- Add dropped items
local drops = core.get_node_drops(n2.name, "")
for _, dropped_item in ipairs(drops) do
for _, dropped_item in pairs(drops) do
core.add_item(np, dropped_item)
end
end
-- Run script hook
for _, callback in ipairs(core.registered_on_dignodes) do
for _, callback in pairs(core.registered_on_dignodes) do
callback(np, n2)
end
end
@ -97,7 +100,7 @@ core.register_entity(":__builtin:falling_node", {
core.add_node(np, self.node)
end
self.object:remove()
nodeupdate(np)
core.check_for_falling(np)
return
end
local vel = self.object:getvelocity()
@ -108,15 +111,17 @@ core.register_entity(":__builtin:falling_node", {
end
})
function spawn_falling_node(p, node)
local function spawn_falling_node(p, node)
local obj = core.add_entity(p, "__builtin:falling_node")
obj:get_luaentity():set_node(node)
if obj then
obj:get_luaentity():set_node(node)
end
end
function drop_attached_node(p)
local function drop_attached_node(p)
local nn = core.get_node(p).name
core.remove_node(p)
for _, item in ipairs(core.get_node_drops(nn, "")) do
for _, item in pairs(core.get_node_drops(nn, "")) do
local pos = {
x = p.x + math.random()/2 - 0.25,
y = p.y + math.random()/2 - 0.25,
@ -126,11 +131,15 @@ function drop_attached_node(p)
end
end
function check_attached_node(p, n)
function builtin_shared.check_attached_node(p, n)
local def = core.registered_nodes[n.name]
local d = {x = 0, y = 0, z = 0}
if def.paramtype2 == "wallmounted" then
d = core.wallmounted_to_dir(n.param2)
-- The fallback vector here is in case 'wallmounted to dir' is nil due
-- to voxelmanip placing a wallmounted node without resetting a
-- pre-existing param2 value that is out-of-range for wallmounted.
-- The fallback vector corresponds to param2 = 0.
d = core.wallmounted_to_dir(n.param2) or {x = 0, y = 1, z = 0}
else
d.y = -1
end
@ -147,19 +156,23 @@ end
-- Some common functions
--
function nodeupdate_single(p)
function core.check_single_for_falling(p)
local n = core.get_node(p)
if core.get_item_group(n.name, "falling_node") ~= 0 then
local p_bottom = {x = p.x, y = p.y - 1, z = p.z}
local n_bottom = core.get_node(p_bottom)
-- Note: walkable is in the node definition, not in item groups
if core.registered_nodes[n_bottom.name] and
-- Only spawn falling node if node below is loaded
local n_bottom = core.get_node_or_nil(p_bottom)
local d_bottom = n_bottom and core.registered_nodes[n_bottom.name]
if d_bottom and
(core.get_item_group(n.name, "float") == 0 or
core.registered_nodes[n_bottom.name].liquidtype == "none") and
(n.name ~= n_bottom.name or (core.registered_nodes[n_bottom.name].leveled and
core.get_node_level(p_bottom) < core.get_node_max_level(p_bottom))) and
(not core.registered_nodes[n_bottom.name].walkable or
core.registered_nodes[n_bottom.name].buildable_to) then
d_bottom.liquidtype == "none") and
(n.name ~= n_bottom.name or (d_bottom.leveled and
core.get_node_level(p_bottom) <
core.get_node_max_level(p_bottom))) and
(not d_bottom.walkable or d_bottom.buildable_to) then
n.level = core.get_node_level(p)
core.remove_node(p)
spawn_falling_node(p, n)
@ -168,7 +181,7 @@ function nodeupdate_single(p)
end
if core.get_item_group(n.name, "attached_node") ~= 0 then
if not check_attached_node(p, n) then
if not builtin_shared.check_attached_node(p, n) then
drop_attached_node(p)
return true
end
@ -181,7 +194,7 @@ end
-- We don't walk diagonals, only our direct neighbors, and self.
-- Down first as likely case, but always before self. The same with sides.
-- Up must come last, so that things above self will also fall all at once.
local nodeupdate_neighbors = {
local check_for_falling_neighbors = {
{x = -1, y = -1, z = 0},
{x = 1, y = -1, z = 0},
{x = 0, y = -1, z = -1},
@ -195,7 +208,7 @@ local nodeupdate_neighbors = {
{x = 0, y = 1, z = 0},
}
function nodeupdate(p)
function core.check_for_falling(p)
-- Round p to prevent falling entities to get stuck.
p = vector.round(p)
@ -214,10 +227,10 @@ function nodeupdate(p)
n = n + 1
s[n] = {p = p, v = v}
-- Select next node from neighbor list.
p = vector.add(p, nodeupdate_neighbors[v])
p = vector.add(p, check_for_falling_neighbors[v])
-- Now we check out the node. If it is in need of an update,
-- it will let us know in the return value (true = updated).
if not nodeupdate_single(p) then
if not core.check_single_for_falling(p) then
-- If we don't need to "recurse" (walk) to it then pop
-- our previous pos off the stack and continue from there,
-- with the v value we were at when we last were at that
@ -249,12 +262,33 @@ end
-- Global callbacks
--
function on_placenode(p, node)
nodeupdate(p)
local function on_placenode(p, node)
core.check_for_falling(p)
end
core.register_on_placenode(on_placenode)
function on_dignode(p, node)
nodeupdate(p)
local function on_dignode(p, node)
core.check_for_falling(p)
end
core.register_on_dignode(on_dignode)
local function on_punchnode(p, node)
core.check_for_falling(p)
end
core.register_on_punchnode(on_punchnode)
--
-- Globally exported functions
--
-- TODO remove this function after the 0.4.15 release
function nodeupdate(p)
core.log("deprecated", "nodeupdate: deprecated, please use core.check_for_falling instead")
core.check_for_falling(p)
end
-- TODO remove this function after the 0.4.15 release
function nodeupdate_single(p)
core.log("deprecated", "nodeupdate_single: deprecated, please use core.check_single_for_falling instead")
core.check_single_for_falling(p)
end

View File

@ -5,9 +5,10 @@ core.forceload_block = nil
core.forceload_free_block = nil
local blocks_forceloaded
local blocks_temploaded = {}
local total_forceloaded = 0
local BLOCKSIZE = 16
local BLOCKSIZE = core.MAP_BLOCKSIZE
local function get_blockpos(pos)
return {
x = math.floor(pos.x/BLOCKSIZE),
@ -15,32 +16,52 @@ local function get_blockpos(pos)
z = math.floor(pos.z/BLOCKSIZE)}
end
function core.forceload_block(pos)
-- When we create/free a forceload, it's either transient or persistent. We want
-- to add to/remove from the table that corresponds to the type of forceload, but
-- we also need the other table because whether we forceload a block depends on
-- both tables.
-- This function returns the "primary" table we are adding to/removing from, and
-- the other table.
local function get_relevant_tables(transient)
if transient then
return blocks_temploaded, blocks_forceloaded
else
return blocks_forceloaded, blocks_temploaded
end
end
function core.forceload_block(pos, transient)
local blockpos = get_blockpos(pos)
local hash = core.hash_node_position(blockpos)
if blocks_forceloaded[hash] ~= nil then
blocks_forceloaded[hash] = blocks_forceloaded[hash] + 1
local relevant_table, other_table = get_relevant_tables(transient)
if relevant_table[hash] ~= nil then
relevant_table[hash] = relevant_table[hash] + 1
return true
elseif other_table[hash] ~= nil then
relevant_table[hash] = 1
else
if total_forceloaded >= (tonumber(core.setting_get("max_forceloaded_blocks")) or 16) then
return false
end
total_forceloaded = total_forceloaded+1
blocks_forceloaded[hash] = 1
relevant_table[hash] = 1
forceload_block(blockpos)
return true
end
end
function core.forceload_free_block(pos)
function core.forceload_free_block(pos, transient)
local blockpos = get_blockpos(pos)
local hash = core.hash_node_position(blockpos)
if blocks_forceloaded[hash] == nil then return end
if blocks_forceloaded[hash] > 1 then
blocks_forceloaded[hash] = blocks_forceloaded[hash] - 1
local relevant_table, other_table = get_relevant_tables(transient)
if relevant_table[hash] == nil then return end
if relevant_table[hash] > 1 then
relevant_table[hash] = relevant_table[hash] - 1
elseif other_table[hash] ~= nil then
relevant_table[hash] = nil
else
total_forceloaded = total_forceloaded-1
blocks_forceloaded[hash] = nil
relevant_table[hash] = nil
forceload_free_block(blockpos)
end
end

View File

@ -3,14 +3,18 @@ local scriptpath = core.get_builtin_path()..DIR_DELIM
local commonpath = scriptpath.."common"..DIR_DELIM
local gamepath = scriptpath.."game"..DIR_DELIM
-- Shared between builtin files, but
-- not exposed to outer context
local builtin_shared = {}
dofile(commonpath.."vector.lua")
dofile(gamepath.."constants.lua")
dofile(gamepath.."item.lua")
assert(loadfile(gamepath.."item.lua"))(builtin_shared)
dofile(gamepath.."register.lua")
if core.setting_getbool("mod_profiling") then
dofile(gamepath.."mod_profiling.lua")
if core.setting_getbool("profiler.load") then
profiler = dofile(scriptpath.."profiler"..DIR_DELIM.."init.lua")
end
dofile(gamepath.."item_entity.lua")
@ -21,8 +25,10 @@ dofile(gamepath.."auth.lua")
dofile(gamepath.."chatcommands.lua")
dofile(gamepath.."static_spawn.lua")
dofile(gamepath.."detached_inventory.lua")
dofile(gamepath.."falling.lua")
assert(loadfile(gamepath.."falling.lua"))(builtin_shared)
dofile(gamepath.."features.lua")
dofile(gamepath.."voxelarea.lua")
dofile(gamepath.."forceloading.lua")
--dofile(gamepath.."statbars.lua")
profiler = nil

View File

@ -1,5 +1,7 @@
-- Minetest: builtin/item.lua
local builtin_shared = ...
local function copy_pointed_thing(pointed_thing)
return {
type = pointed_thing.type,
@ -250,7 +252,9 @@ function core.item_place_node(itemstack, placer, pointed_thing, param2)
local newnode = {name = def.name, param1 = 0, param2 = param2}
-- Calculate direction for wall mounted stuff like torches and signs
if def.paramtype2 == 'wallmounted' and not param2 then
if def.place_param2 ~= nil then
newnode.param2 = def.place_param2
elseif def.paramtype2 == 'wallmounted' and not param2 then
local dir = {
x = under.x - above.x,
y = under.y - above.y,
@ -273,7 +277,7 @@ function core.item_place_node(itemstack, placer, pointed_thing, param2)
-- Check if the node is attached and if it can be placed there
if core.get_item_group(def.name, "attached_node") ~= 0 and
not check_attached_node(place_to, newnode) then
not builtin_shared.check_attached_node(place_to, newnode) then
core.log("action", "attached node " .. def.name ..
" can not be placed at " .. core.pos_to_string(place_to))
return itemstack, false
@ -470,6 +474,9 @@ function core.node_dig(pos, node, digger)
-- Wear out tool
if not core.setting_getbool("creative_mode") then
wielded:add_wear(dp.wear)
if wielded:get_count() == 0 and wdef.sound and wdef.sound.breaks then
core.sound_play(wdef.sound.breaks, {pos = pos, gain = 0.5})
end
end
end
digger:set_wielded_item(wielded)

View File

@ -31,7 +31,6 @@ core.register_entity(":__builtin:item", {
spritediv = {x = 1, y = 1},
initial_sprite_basepos = {x = 0, y = 0},
is_visible = false,
infotext = "",
},
itemstring = '',
@ -51,7 +50,6 @@ core.register_entity(":__builtin:item", {
local c = s
local itemtable = stack:to_table()
local itemname = nil
local description = ""
if itemtable then
itemname = stack:to_table().name
end
@ -60,7 +58,6 @@ core.register_entity(":__builtin:item", {
if core.registered_items[itemname] then
item_texture = core.registered_items[itemname].inventory_image
item_type = core.registered_items[itemname].type
description = core.registered_items[itemname].description
end
local prop = {
is_visible = true,

View File

@ -38,7 +38,7 @@ core.register_globalstep(function(dtime)
end)
function core.after(after, func, ...)
assert(tonumber(time) and type(func) == "function",
assert(tonumber(after) and type(func) == "function",
"Invalid core.after invocation")
jobs[#jobs + 1] = {
func = func,
@ -48,11 +48,13 @@ function core.after(after, func, ...)
}
end
function core.check_player_privs(player_or_name, ...)
local name = player_or_name
-- Check if we have been provided with a Player object.
if type(name) ~= "string" then
function core.check_player_privs(name, ...)
local arg_type = type(name)
if (arg_type == "userdata" or arg_type == "table") and
name.get_player_name then -- If it quacks like a Player...
name = name:get_player_name()
elseif arg_type ~= "string" then
error("Invalid core.check_player_privs argument type: " .. arg_type, 2)
end
local requested_privs = {...}
@ -85,11 +87,21 @@ end
local player_list = {}
core.register_on_joinplayer(function(player)
player_list[player:get_player_name()] = player
local player_name = player:get_player_name()
player_list[player_name] = player
if not minetest.is_singleplayer() then
core.chat_send_all("*** " .. player_name .. " joined the game.")
end
end)
core.register_on_leaveplayer(function(player)
player_list[player:get_player_name()] = nil
core.register_on_leaveplayer(function(player, timed_out)
local player_name = player:get_player_name()
player_list[player_name] = nil
local announcement = "*** " .. player_name .. " left the game."
if timed_out then
announcement = announcement .. " (timed out)"
end
core.chat_send_all(announcement)
end)
function core.get_connected_players()
@ -197,3 +209,39 @@ function core.http_add_fetch(httpenv)
return httpenv
end
if minetest.setting_getbool("disable_escape_sequences") then
function core.get_color_escape_sequence(color)
return ""
end
function core.get_background_escape_sequence(color)
return ""
end
function core.colorize(color, message)
return message
end
else
local ESCAPE_CHAR = string.char(0x1b)
function core.get_color_escape_sequence(color)
return ESCAPE_CHAR .. "(c@" .. color .. ")"
end
function core.get_background_escape_sequence(color)
return ESCAPE_CHAR .. "(b@" .. color .. ")"
end
function core.colorize(color, message)
return core.get_color_escape_sequence(color) .. message .. core.get_color_escape_sequence("#ffffff")
end
end
function core.close_formspec(player_name, formname)
return minetest.show_formspec(player_name, formname, "")
end

View File

@ -1,356 +0,0 @@
-- Minetest: builtin/game/mod_profiling.lua
local mod_statistics = {}
mod_statistics.step_total = 0
mod_statistics.data = {}
mod_statistics.stats = {}
mod_statistics.stats["total"] = {
min_us = math.huge,
max_us = 0,
avg_us = 0,
min_per = 100,
max_per = 100,
avg_per = 100
}
local replacement_table = {
"register_globalstep",
"register_on_placenode",
"register_on_dignode",
"register_on_punchnode",
"register_on_generated",
"register_on_newplayer",
"register_on_dieplayer",
"register_on_respawnplayer",
"register_on_prejoinplayer",
"register_on_joinplayer",
"register_on_leaveplayer",
"register_on_cheat",
"register_on_chat_message",
"register_on_player_receive_fields",
"register_on_mapgen_init",
"register_on_craft",
"register_craft_predict",
"register_on_item_eat"
}
--------------------------------------------------------------------------------
function mod_statistics.log_time(type, modname, time_in_us)
if modname == nil then
modname = "builtin"
end
if mod_statistics.data[modname] == nil then
mod_statistics.data[modname] = {}
end
if mod_statistics.data[modname][type] == nil then
mod_statistics.data[modname][type] = 0
end
mod_statistics.data[modname][type] =
mod_statistics.data[modname][type] + time_in_us
mod_statistics.step_total = mod_statistics.step_total + time_in_us
end
--------------------------------------------------------------------------------
function mod_statistics.update_statistics(dtime)
for modname,types in pairs(mod_statistics.data) do
if mod_statistics.stats[modname] == nil then
mod_statistics.stats[modname] = {
min_us = math.huge,
max_us = 0,
avg_us = 0,
min_per = 100,
max_per = 0,
avg_per = 0
}
end
local modtime = 0
for type,time in pairs(types) do
modtime = modtime + time
if mod_statistics.stats[modname].types == nil then
mod_statistics.stats[modname].types = {}
end
if mod_statistics.stats[modname].types[type] == nil then
mod_statistics.stats[modname].types[type] = {
min_us = math.huge,
max_us = 0,
avg_us = 0,
min_per = 100,
max_per = 0,
avg_per = 0
}
end
local toupdate = mod_statistics.stats[modname].types[type]
--update us values
toupdate.min_us = math.min(time, toupdate.min_us)
toupdate.max_us = math.max(time, toupdate.max_us)
--TODO find better algorithm
toupdate.avg_us = toupdate.avg_us * 0.99 + modtime * 0.01
--update percentage values
local cur_per = (time/mod_statistics.step_total) * 100
toupdate.min_per = math.min(toupdate.min_per, cur_per)
toupdate.max_per = math.max(toupdate.max_per, cur_per)
--TODO find better algorithm
toupdate.avg_per = toupdate.avg_per * 0.99 + cur_per * 0.01
mod_statistics.data[modname][type] = 0
end
--per mod statistics
--update us values
mod_statistics.stats[modname].min_us =
math.min(modtime, mod_statistics.stats[modname].min_us)
mod_statistics.stats[modname].max_us =
math.max(modtime, mod_statistics.stats[modname].max_us)
--TODO find better algorithm
mod_statistics.stats[modname].avg_us =
mod_statistics.stats[modname].avg_us * 0.99 + modtime * 0.01
--update percentage values
local cur_per = (modtime/mod_statistics.step_total) * 100
mod_statistics.stats[modname].min_per =
math.min(mod_statistics.stats[modname].min_per, cur_per)
mod_statistics.stats[modname].max_per =
math.max(mod_statistics.stats[modname].max_per, cur_per)
--TODO find better algorithm
mod_statistics.stats[modname].avg_per =
mod_statistics.stats[modname].avg_per * 0.99 + cur_per * 0.01
end
--update "total"
mod_statistics.stats["total"].min_us =
math.min(mod_statistics.step_total, mod_statistics.stats["total"].min_us)
mod_statistics.stats["total"].max_us =
math.max(mod_statistics.step_total, mod_statistics.stats["total"].max_us)
--TODO find better algorithm
mod_statistics.stats["total"].avg_us =
mod_statistics.stats["total"].avg_us * 0.99 +
mod_statistics.step_total * 0.01
mod_statistics.step_total = 0
end
--------------------------------------------------------------------------------
local function build_callback(log_id, fct)
return function( toregister )
local modname = core.get_current_modname()
fct(function(...)
local starttime = core.get_us_time()
-- note maximum 10 return values are supported unless someone finds
-- a way to store a variable lenght return value list
local r0, r1, r2, r3, r4, r5, r6, r7, r8, r9 = toregister(...)
local delta = core.get_us_time() - starttime
mod_statistics.log_time(log_id, modname, delta)
return r0, r1, r2, r3, r4, r5, r6, r7, r8, r9
end
)
end
end
--------------------------------------------------------------------------------
function profiling_print_log(cmd, filter)
print("Filter:" .. dump(filter))
core.log("action", "Values below show times/percentages per server step.")
core.log("action", "Following suffixes are used for entities:")
core.log("action", "\t#oa := on_activate, #os := on_step, #op := on_punch, #or := on_rightclick, #gs := get_staticdata")
core.log("action",
string.format("%16s | %25s | %10s | %10s | %10s | %9s | %9s | %9s",
"modname", "type" , "min µs", "max µs", "avg µs", "min %", "max %", "avg %")
)
core.log("action",
"-----------------+---------------------------+-----------+" ..
"-----------+-----------+-----------+-----------+-----------")
for modname,statistics in pairs(mod_statistics.stats) do
if modname ~= "total" then
if (filter == "") or (modname == filter) then
if modname:len() > 16 then
modname = "..." .. modname:sub(-13)
end
core.log("action",
string.format("%16s | %25s | %9d | %9d | %9d | %9d | %9d | %9d",
modname,
" ",
statistics.min_us,
statistics.max_us,
statistics.avg_us,
statistics.min_per,
statistics.max_per,
statistics.avg_per)
)
if core.setting_getbool("detailed_profiling") then
if statistics.types ~= nil then
for type,typestats in pairs(statistics.types) do
if type:len() > 25 then
type = "..." .. type:sub(-22)
end
core.log("action",
string.format(
"%16s | %25s | %9d | %9d | %9d | %9d | %9d | %9d",
" ",
type,
typestats.min_us,
typestats.max_us,
typestats.avg_us,
typestats.min_per,
typestats.max_per,
typestats.avg_per)
)
end
end
end
end
end
end
core.log("action",
"-----------------+---------------------------+-----------+" ..
"-----------+-----------+-----------+-----------+-----------")
if filter == "" then
core.log("action",
string.format("%16s | %25s | %9d | %9d | %9d | %9d | %9d | %9d",
"total",
" ",
mod_statistics.stats["total"].min_us,
mod_statistics.stats["total"].max_us,
mod_statistics.stats["total"].avg_us,
mod_statistics.stats["total"].min_per,
mod_statistics.stats["total"].max_per,
mod_statistics.stats["total"].avg_per)
)
end
core.log("action", " ")
return true
end
--------------------------------------------------------------------------------
local function initialize_profiling()
core.log("action", "Initialize tracing")
mod_statistics.entity_callbacks = {}
-- first register our own globalstep handler
core.register_globalstep(mod_statistics.update_statistics)
local rp_register_entity = core.register_entity
core.register_entity = function(name, prototype)
local modname = core.get_current_modname()
local new_on_activate = nil
local new_on_step = nil
local new_on_punch = nil
local new_rightclick = nil
local new_get_staticdata = nil
if prototype.on_activate ~= nil then
local cbid = name .. "#oa"
mod_statistics.entity_callbacks[cbid] = prototype.on_activate
new_on_activate = function(self, staticdata, dtime_s)
local starttime = core.get_us_time()
mod_statistics.entity_callbacks[cbid](self, staticdata, dtime_s)
local delta = core.get_us_time() -starttime
mod_statistics.log_time(cbid, modname, delta)
end
end
if prototype.on_step ~= nil then
local cbid = name .. "#os"
mod_statistics.entity_callbacks[cbid] = prototype.on_step
new_on_step = function(self, dtime)
local starttime = core.get_us_time()
mod_statistics.entity_callbacks[cbid](self, dtime)
local delta = core.get_us_time() -starttime
mod_statistics.log_time(cbid, modname, delta)
end
end
if prototype.on_punch ~= nil then
local cbid = name .. "#op"
mod_statistics.entity_callbacks[cbid] = prototype.on_punch
new_on_punch = function(self, hitter)
local starttime = core.get_us_time()
mod_statistics.entity_callbacks[cbid](self, hitter)
local delta = core.get_us_time() -starttime
mod_statistics.log_time(cbid, modname, delta)
end
end
if prototype.rightclick ~= nil then
local cbid = name .. "#rc"
mod_statistics.entity_callbacks[cbid] = prototype.rightclick
new_rightclick = function(self, clicker)
local starttime = core.get_us_time()
mod_statistics.entity_callbacks[cbid](self, clicker)
local delta = core.get_us_time() -starttime
mod_statistics.log_time(cbid, modname, delta)
end
end
if prototype.get_staticdata ~= nil then
local cbid = name .. "#gs"
mod_statistics.entity_callbacks[cbid] = prototype.get_staticdata
new_get_staticdata = function(self)
local starttime = core.get_us_time()
local retval = mod_statistics.entity_callbacks[cbid](self)
local delta = core.get_us_time() -starttime
mod_statistics.log_time(cbid, modname, delta)
return retval
end
end
prototype.on_activate = new_on_activate
prototype.on_step = new_on_step
prototype.on_punch = new_on_punch
prototype.rightclick = new_rightclick
prototype.get_staticdata = new_get_staticdata
rp_register_entity(name,prototype)
end
for i,v in ipairs(replacement_table) do
local to_replace = core[v]
core[v] = build_callback(v, to_replace)
end
local rp_register_abm = core.register_abm
core.register_abm = function(spec)
local modname = core.get_current_modname()
local replacement_spec = {
nodenames = spec.nodenames,
neighbors = spec.neighbors,
interval = spec.interval,
chance = spec.chance,
action = function(pos, node, active_object_count, active_object_count_wider)
local starttime = core.get_us_time()
spec.action(pos, node, active_object_count, active_object_count_wider)
local delta = core.get_us_time() - starttime
mod_statistics.log_time("abm", modname, delta)
end
}
rp_register_abm(replacement_spec)
end
core.log("action", "Mod profiling initialized")
end
initialize_profiling()

View File

@ -26,18 +26,46 @@ function core.register_privilege(name, param)
end
core.register_privilege("interact", "Can interact with things and modify the world")
core.register_privilege("teleport", "Can use /teleport command")
core.register_privilege("bring", "Can teleport other players")
core.register_privilege("settime", "Can use /time")
core.register_privilege("privs", "Can modify privileges")
core.register_privilege("basic_privs", "Can modify 'shout' and 'interact' privileges")
core.register_privilege("server", "Can do server maintenance stuff")
core.register_privilege("protection_bypass", "Can bypass node protection in the world")
core.register_privilege("shout", "Can speak in chat")
core.register_privilege("ban", "Can ban and unban players")
core.register_privilege("kick", "Can kick players")
core.register_privilege("give", "Can use /give and /giveme")
core.register_privilege("password", "Can use /setpassword and /clearpassword")
core.register_privilege("basic_privs", "Can modify 'shout' and 'interact' privileges")
core.register_privilege("privs", "Can modify privileges")
core.register_privilege("teleport", {
description = "Can use /teleport command",
give_to_singleplayer = false,
})
core.register_privilege("bring", {
description = "Can teleport other players",
give_to_singleplayer = false,
})
core.register_privilege("settime", {
description = "Can use /time",
give_to_singleplayer = false,
})
core.register_privilege("server", {
description = "Can do server maintenance stuff",
give_to_singleplayer = false,
})
core.register_privilege("protection_bypass", {
description = "Can bypass node protection in the world",
give_to_singleplayer = false,
})
core.register_privilege("ban", {
description = "Can ban and unban players",
give_to_singleplayer = false,
})
core.register_privilege("kick", {
description = "Can kick players",
give_to_singleplayer = false,
})
core.register_privilege("give", {
description = "Can use /give and /giveme",
give_to_singleplayer = false,
})
core.register_privilege("password", {
description = "Can use /setpassword and /clearpassword",
give_to_singleplayer = false,
})
core.register_privilege("fly", {
description = "Can fly using the free_move mode",
give_to_singleplayer = false,
@ -50,5 +78,15 @@ core.register_privilege("noclip", {
description = "Can fly through walls",
give_to_singleplayer = false,
})
core.register_privilege("rollback", "Can use the rollback functionality")
core.register_privilege("rollback", {
description = "Can use the rollback functionality",
give_to_singleplayer = false,
})
core.register_privilege("zoom", {
description = "Can zoom the camera",
give_to_singleplayer = false,
})
core.register_privilege("debug", {
description = "Allows enabling various debug options that may affect gameplay",
give_to_singleplayer = false,
})

View File

@ -7,6 +7,9 @@
local register_item_raw = core.register_item_raw
core.register_item_raw = nil
local unregister_item_raw = core.unregister_item_raw
core.unregister_item_raw = nil
local register_alias_raw = core.register_alias_raw
core.register_alias_raw = nil
@ -124,6 +127,11 @@ function core.register_item(name, itemdef)
fixed = {-1/8, -1/2, -1/8, 1/8, 1/2, 1/8},
}
end
if itemdef.light_source and itemdef.light_source > core.LIGHT_MAX then
itemdef.light_source = core.LIGHT_MAX
core.log("warning", "Node 'light_source' value exceeds maximum," ..
" limiting to maximum: " ..name)
end
setmetatable(itemdef, {__index = core.nodedef_default})
core.registered_nodes[itemdef.name] = itemdef
elseif itemdef.type == "craft" then
@ -172,6 +180,27 @@ function core.register_item(name, itemdef)
register_item_raw(itemdef)
end
function core.unregister_item(name)
if not core.registered_items[name] then
core.log("warning", "Not unregistering item " ..name..
" because it doesn't exist.")
return
end
-- Erase from registered_* table
local type = core.registered_items[name].type
if type == "node" then
core.registered_nodes[name] = nil
elseif type == "craft" then
core.registered_craftitems[name] = nil
elseif type == "tool" then
core.registered_tools[name] = nil
end
core.registered_items[name] = nil
unregister_item_raw(name)
end
function core.register_node(name, nodedef)
nodedef.type = "node"
core.register_item(name, nodedef)
@ -242,6 +271,20 @@ function core.register_alias(name, convert_to)
end
end
function core.register_alias_force(name, convert_to)
if forbidden_item_names[name] then
error("Unable to register alias: Name is forbidden: " .. name)
end
if core.registered_items[name] ~= nil then
core.unregister_item(name)
core.log("info", "Removed item " ..name..
" while attempting to force add an alias")
end
--core.log("Registering alias: " .. name .. " -> " .. convert_to)
core.registered_aliases[name] = convert_to
register_alias_raw(name, convert_to)
end
function core.on_craft(itemstack, player, old_craft_list, craft_inv)
for _, func in ipairs(core.registered_on_crafts) do
itemstack = func(itemstack, player, old_craft_list, craft_inv) or itemstack

View File

@ -50,7 +50,7 @@ end
function VoxelArea:position(i)
local p = {}
local MinEdge = self.MinEdge
i = i - 1
p.z = math.floor(i / self.zstride) + MinEdge.z
@ -84,23 +84,46 @@ end
function VoxelArea:iter(minx, miny, minz, maxx, maxy, maxz)
local i = self:index(minx, miny, minz) - 1
local last = self:index(maxx, maxy, maxz)
local ystride = self.ystride
local zstride = self.zstride
local yoff = (last+1) % ystride
local zoff = (last+1) % zstride
local ystridediff = (i - last) % ystride
local zstridediff = (i - last) % zstride
local xrange = maxx - minx + 1
local nextaction = i + 1 + xrange
local y = 0
local yrange = maxy - miny + 1
local yreqstride = self.ystride - xrange
local z = 0
local zrange = maxz - minz + 1
local multistride = self.zstride - ((yrange - 1) * self.ystride + xrange)
return function()
-- continue i until it needs to jump
i = i + 1
if i % zstride == zoff then
i = i + zstridediff
elseif i % ystride == yoff then
i = i + ystridediff
end
if i <= last then
if i ~= nextaction then
return i
end
-- continue y until maxy is exceeded
y = y + 1
if y ~= yrange then
-- set i to index(minx, miny + y, minz + z) - 1
i = i + yreqstride
nextaction = i + xrange
return i
end
-- continue z until maxz is exceeded
z = z + 1
if z == zrange then
-- cuboid finished, return nil
return
end
-- set i to index(minx, miny, minz + z) - 1
i = i + multistride
y = 0
nextaction = i + xrange
return i
end
end

View File

@ -247,14 +247,18 @@ end
--------------------------------------------------------------------------------
function is_server_protocol_compat(server_proto_min, server_proto_max)
return min_supp_proto <= (server_proto_max or 24) and max_supp_proto >= (server_proto_min or 13)
if (not server_proto_min) or (not server_proto_max) then
-- There is no info. Assume the best and act as if we would be compatible.
return true
end
return min_supp_proto <= server_proto_max and max_supp_proto >= server_proto_min
end
--------------------------------------------------------------------------------
function is_server_protocol_compat_or_error(server_proto_min, server_proto_max)
if not is_server_protocol_compat(server_proto_min, server_proto_max) then
local server_prot_ver_info, client_prot_ver_info
local s_p_min = server_proto_min or 13
local s_p_max = server_proto_max or 24
local s_p_min = server_proto_min
local s_p_max = server_proto_max
if s_p_min ~= s_p_max then
server_prot_ver_info = fgettext_ne("Server supports protocol versions between $1 and $2. ",

View File

@ -16,6 +16,9 @@
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
--------------------------------------------------------------------------------
local enabled_all = false
local function modname_valid(name)
return not name:find("[^a-z0-9_]")
end
@ -44,13 +47,18 @@ local function get_formspec(data)
if mod == nil then
mod = {name=""}
end
local hard_deps, soft_deps = modmgr.get_dependencies(mod.path)
retval = retval ..
"label[0,0.7;" .. fgettext("Mod:") .. "]" ..
"label[0.75,0.7;" .. mod.name .. "]" ..
"label[0,1.25;" .. fgettext("Depends:") .. "]" ..
"textlist[0,1.75;5,4.25;world_config_depends;" ..
modmgr.get_dependencies(mod.path) .. ";0]" ..
"label[0,1.25;" .. fgettext("Dependencies:") .. "]" ..
"textlist[0,1.75;5,2.125;world_config_depends;" ..
hard_deps .. ";0]" ..
"label[0,3.875;" .. fgettext("Optional dependencies:") .. "]" ..
"textlist[0,4.375;5,1.8;world_config_optdepends;" ..
soft_deps .. ";0]" ..
"button[3.25,7;2.5,0.5;btn_config_world_save;" .. fgettext("Save") .. "]" ..
"button[5.75,7;2.5,0.5;btn_config_world_cancel;" .. fgettext("Cancel") .. "]"
@ -80,11 +88,15 @@ local function get_formspec(data)
end
end
end
retval = retval ..
"button[8.75,0.125;2.5,0.5;btn_all_mods;" .. fgettext("Enable all") .. "]" ..
"textlist[5.5,0.75;5.75,5.25;world_config_modlist;"
if enabled_all then
retval = retval ..
"button[8.75,0.125;2.5,0.5;btn_disable_all_mods;" .. fgettext("Disable all") .. "]" ..
"textlist[5.5,0.75;5.75,5.4;world_config_modlist;"
else
retval = retval ..
"button[8.75,0.125;2.5,0.5;btn_enable_all_mods;" .. fgettext("Enable all") .. "]" ..
"textlist[5.5,0.75;5.75,5.4;world_config_modlist;"
end
retval = retval .. modmgr.render_modlist(data.list)
retval = retval .. ";" .. data.selected_mod .."]"
@ -229,15 +241,27 @@ local function handle_buttons(this, fields)
return true
end
if fields["btn_all_mods"] then
if fields.btn_enable_all_mods then
local list = this.data.list:get_raw_list()
for i=1,#list,1 do
if list[i].typ ~= "game_mod" and
not list[i].is_modpack then
for i = 1, #list do
if list[i].typ ~= "game_mod" and not list[i].is_modpack then
list[i].enabled = true
end
end
enabled_all = true
return true
end
if fields.btn_disable_all_mods then
local list = this.data.list:get_raw_list()
for i = 1, #list do
if list[i].typ ~= "game_mod" and not list[i].is_modpack then
list[i].enabled = false
end
end
enabled_all = false
return true
end

View File

@ -479,13 +479,13 @@ local function handle_change_setting_buttons(this, fields)
return true
end
if setting.min and new_value < setting.min then
this.data.error_message = fgettext_ne("The value must be greater than $1.", setting.min)
this.data.error_message = fgettext_ne("The value must be at least $1.", setting.min)
this.data.entered_text = fields["te_setting_value"]
core.update_formspec(this:get_formspec())
return true
end
if setting.max and new_value > setting.max then
this.data.error_message = fgettext_ne("The value must be lower than $1.", setting.max)
this.data.error_message = fgettext_ne("The value must not be larger than $1.", setting.max)
this.data.entered_text = fields["te_setting_value"]
core.update_formspec(this:get_formspec())
return true
@ -659,102 +659,12 @@ function create_adv_settings_dlg()
return dlg
end
local function create_minetest_conf_example()
local result = "# This file contains a list of all available settings and their default value for minetest.conf\n" ..
"\n" ..
"# By default, all the settings are commented and not functional.\n" ..
"# Uncomment settings by removing the preceding #.\n" ..
"\n" ..
"# minetest.conf is read by default from:\n" ..
"# ../minetest.conf\n" ..
"# ../../minetest.conf\n" ..
"# Any other path can be chosen by passing the path as a parameter\n" ..
"# to the program, eg. \"minetest.exe --config ../minetest.conf.example\".\n" ..
"\n" ..
"# Further documentation:\n" ..
"# http://wiki.minetest.net/\n" ..
"\n"
-- Generate minetest.conf.example and settings_translation_file.cpp
local settings = parse_config_file(true, false)
for _, entry in ipairs(settings) do
if entry.type == "category" then
if entry.level == 0 then
result = result .. "#\n# " .. entry.name .. "\n#\n\n"
else
for i = 1, entry.level do
result = result .. "#"
end
result = result .. "# " .. entry.name .. "\n\n"
end
else
if entry.comment ~= "" then
for _, comment_line in ipairs(entry.comment:split("\n", true)) do
result = result .."# " .. comment_line .. "\n"
end
end
result = result .. "# type: " .. entry.type
if entry.min then
result = result .. " min: " .. entry.min
end
if entry.max then
result = result .. " max: " .. entry.max
end
if entry.values then
result = result .. " values: " .. table.concat(entry.values, ", ")
end
if entry.possible then
result = result .. " possible values: " .. entry.possible:gsub(",", ", ")
end
result = result .. "\n"
local append = ""
if entry.default ~= "" then
append = " " .. entry.default
end
result = result .. "# " .. entry.name .. " =" .. append .. "\n\n"
end
end
return result
end
-- *** Please note ***
-- There is text in minetest.conf.example that will not be generated from
-- settingtypes.txt but must be preserved:
-- The documentation of mapgen noise parameter formats (title plus 16 lines)
-- Noise parameter 'mgv5_np_ground' in group format (13 lines)
local function create_translation_file()
local result = "// This file is automatically generated\n" ..
"// It conatins a bunch of fake gettext calls, to tell xgettext about the strings in config files\n" ..
"// To update it, refer to the bottom of builtin/mainmenu/tab_settings.lua\n\n" ..
"fake_function() {\n"
local settings = parse_config_file(true, false)
for _, entry in ipairs(settings) do
if entry.type == "category" then
local name_escaped = entry.name:gsub("\"", "\\\"")
result = result .. "\tgettext(\"" .. name_escaped .. "\");\n"
else
if entry.readable_name then
local readable_name_escaped = entry.readable_name:gsub("\"", "\\\"")
result = result .. "\tgettext(\"" .. readable_name_escaped .. "\");\n"
end
if entry.comment ~= "" then
local comment_escaped = entry.comment:gsub("\n", "\\n")
comment_escaped = comment_escaped:gsub("\"", "\\\"")
result = result .. "\tgettext(\"" .. comment_escaped .. "\");\n"
end
end
end
result = result .. "}\n"
return result
end
if false then
local file = io.open("minetest.conf.example", "w")
if file then
file:write(create_minetest_conf_example())
file:close()
end
end
if false then
local file = io.open("src/settings_translation_file.cpp", "w")
if file then
file:write(create_translation_file())
file:close()
end
end
--assert(loadfile(core.get_mainmenu_path()..DIR_DELIM.."generate_from_settingtypes.lua"))(parse_config_file(true, false))

View File

@ -0,0 +1,99 @@
local settings = ...
local concat = table.concat
local insert = table.insert
local sprintf = string.format
local rep = string.rep
local minetest_example_header = [[
# This file contains a list of all available settings and their default value for minetest.conf
# By default, all the settings are commented and not functional.
# Uncomment settings by removing the preceding #.
# minetest.conf is read by default from:
# ../minetest.conf
# ../../minetest.conf
# Any other path can be chosen by passing the path as a parameter
# to the program, eg. "minetest.exe --config ../minetest.conf.example".
# Further documentation:
# http://wiki.minetest.net/
]]
local function create_minetest_conf_example()
local result = { minetest_example_header }
for _, entry in ipairs(settings) do
if entry.type == "category" then
if entry.level == 0 then
insert(result, "#\n# " .. entry.name .. "\n#\n\n")
else
insert(result, rep("#", entry.level))
insert(result, "# " .. entry.name .. "\n\n")
end
else
if entry.comment ~= "" then
for _, comment_line in ipairs(entry.comment:split("\n", true)) do
insert(result, "# " .. comment_line .. "\n")
end
end
insert(result, "# type: " .. entry.type)
if entry.min then
insert(result, " min: " .. entry.min)
end
if entry.max then
insert(result, " max: " .. entry.max)
end
if entry.values then
insert(result, " values: " .. concat(entry.values, ", "))
end
if entry.possible then
insert(result, " possible values: " .. entry.possible:gsub(",", ", "))
end
insert(result, "\n")
local append
if entry.default ~= "" then
append = " " .. entry.default
end
insert(result, sprintf("# %s =%s\n\n", entry.name, append or ""))
end
end
return concat(result)
end
local translation_file_header = [[
// This file is automatically generated
// It conatins a bunch of fake gettext calls, to tell xgettext about the strings in config files
// To update it, refer to the bottom of builtin/mainmenu/dlg_settings_advanced.lua
fake_function() {]]
local function create_translation_file()
local result = { translation_file_header }
for _, entry in ipairs(settings) do
if entry.type == "category" then
insert(result, sprintf("\tgettext(%q);", entry.name))
else
if entry.readable_name then
insert(result, sprintf("\tgettext(%q);", entry.readable_name))
end
if entry.comment ~= "" then
local comment_escaped = entry.comment:gsub("\n", "\\n")
comment_escaped = comment_escaped:gsub("\"", "\\\"")
insert(result, "\tgettext(\"" .. comment_escaped .. "\");")
end
end
end
insert(result, "}\n")
return concat(result, "\n")
end
local file = assert(io.open("minetest.conf.example", "w"))
file:write(create_minetest_conf_example())
file:close()
file = assert(io.open("src/settings_translation_file.cpp", "w"))
file:write(create_translation_file())
file:close()

View File

@ -284,27 +284,33 @@ end
--------------------------------------------------------------------------------
function modmgr.get_dependencies(modfolder)
local toadd = ""
local toadd_hard = ""
local toadd_soft = ""
if modfolder ~= nil then
local filename = modfolder ..
DIR_DELIM .. "depends.txt"
local hard_dependencies = {}
local soft_dependencies = {}
local dependencyfile = io.open(filename,"r")
if dependencyfile then
local dependency = dependencyfile:read("*l")
while dependency do
if toadd ~= "" then
toadd = toadd .. ","
dependency = dependency:gsub("\r", "")
if string.sub(dependency, -1, -1) == "?" then
table.insert(soft_dependencies, string.sub(dependency, 1, -2))
else
table.insert(hard_dependencies, dependency)
end
toadd = toadd .. dependency
dependency = dependencyfile:read()
end
dependencyfile:close()
end
toadd_hard = table.concat(hard_dependencies, ",")
toadd_soft = table.concat(soft_dependencies, ",")
end
return toadd
return toadd_hard, toadd_soft
end
--------------------------------------------------------------------------------

View File

@ -33,20 +33,23 @@ local core_developers = {
"Loic Blot (nerzhul/nrz) <loic.blot@unix-experience.fr>",
"Matt Gregory (paramat)",
"est31 <MTest31@outlook.com>",
"Craig Robbins (Zeno)",
"Craig Robbins (Zeno) <craig.d.robbins@gmail.com>",
"Auke Kok (sofar) <sofar@foo-projects.org>",
"Andrew Ward (rubenwardy) <rubenwardy@gmail.com>",
}
local active_contributors = {
"Auke Kok (sofar) <sofar@foo-projects.org>",
"Duane Robertson <duane@duanerobertson.com>",
"SmallJoker <mk939@ymail.com>",
"Andrew Ward (rubenwardy) <rubenwardy@gmail.com>",
"Lars Hofhansl <larsh@apache.org>",
"Jeija <jeija@mesecons.net>",
"Gregory Currie (gregorycu)",
"Sokomine <wegwerf@anarres.dyndns.org>",
"TeTpaAka",
"Jean-Patrick G (kilbith) <jeanpatrick.guerrero@gmail.com>",
"Diego Martínez (kaeza) <kaeza@users.sf.net>",
"Dániel Juhász (juhdanad) <juhdanad@gmail.com>",
"Rogier <rogier777@gmail.com>",
}
local previous_core_developers = {
@ -79,18 +82,15 @@ return {
name = "credits",
caption = fgettext("Credits"),
cbf_formspec = function(tabview, name, tabdata)
return "label[0.1,0;MultiCraft Open Source Project, ver. " .. core.get_version() .. "]" ..
local version = core.get_version()
-- return "label[0.1,0;MultiCraft Open Source Project, ver. " .. version.string .. "]" ..
return "label[0.1,0;MultiCraft Open Source Project]" ..
"label[0.1,0.3;]" ..
"label[0.1,0.5;https://github.com/MultiCraftProject]" ..
"label[0.1,1.0;LGPLv3.0+ and CC-BY-SA 3.0]" ..
"tablecolumns[color;text]" ..
"tableoptions[background=#00000000;highlight=#00000000;border=false]" ..
"table[0,1.6;11.75,3.5;list_credits;" ..
"#FFFF00," .. fgettext("Dedication of the current release") .. ",," ..
"This release is dedicated to the memory of" .. ",," ..
"Minetest developer Maciej Kasatkin (RealBadAngel)" .. ",," ..
"who died on March 24 2016." .. ",," ..
"Our thoughts are with his family and friends." .. ",,," ..
"#FFFF00," .. fgettext("MultiCraft Developers") .. ",," ..
table.concat(multicraft_developers, ",,") .. ",,," ..
"#FFFF00," .. fgettext("Minetest Developers") .. ",," ..

View File

@ -98,12 +98,24 @@ local function get_formspec(tabview, name, tabdata)
.. fgettext("Uninstall selected modpack") .. "]"
else
--show dependencies
local toadd_hard, toadd_soft = modmgr.get_dependencies(selected_mod.path)
if toadd_hard == "" and toadd_soft == "" then
retval = retval .. "," .. fgettext("No dependencies.")
else
if toadd_hard ~= "" then
retval = retval .. "," .. fgettext("Dependencies:") .. ","
retval = retval .. toadd_hard
end
if toadd_soft ~= "" then
if toadd_hard ~= "" then
retval = retval .. ","
end
retval = retval .. "," .. fgettext("Optional dependencies:") .. ","
retval = retval .. toadd_soft
end
end
retval = retval .. "," .. fgettext("Depends:") .. ","
local toadd = modmgr.get_dependencies(selected_mod.path)
retval = retval .. toadd .. ";0]"
retval = retval .. ";0]"
retval = retval .. "button[5.5,4.85;4.5,0.5;btn_mod_mgr_delete_mod;"
.. fgettext("Uninstall selected mod") .. "]"

View File

@ -18,7 +18,7 @@
local function current_game()
local last_game_id = core.setting_get("menu_last_game")
local game, index = gamemgr.find_by_gameid(last_game_id)
return game
end
@ -30,9 +30,12 @@ local function get_formspec(tabview, name, tabdata)
tonumber(core.setting_get("mainmenu_last_selected_world"))
)
retval = retval ..
if PLATFORM ~= "iOS" then
retval = retval ..
"button[3.5,4.5;2.6,0.5;world_delete;".. fgettext("Delete") .. "]" ..
"button[6,4.5;2.8,0.5;world_create;".. fgettext("New") .. "]" ..
"button[6,4.5;2.8,0.5;world_create;".. fgettext("New") .. "]"
end
retval = retval ..
"button[8.7,4.5;3.30,0.5;play;".. fgettext("Play") .. "]" ..
"checkbox[0.0,4.25;cb_creative_mode;".. fgettext("Creative Mode") .. ";" ..
dump(core.setting_getbool("creative_mode")) .. "]"..
@ -87,7 +90,7 @@ local function main_button_handler(this, fields, name, tabdata)
fields["key_enter"] then
local selected = core.get_textlist_index("sp_worlds")
gamedata.selected_world = menudata.worldlist:get_raw_index(selected)
if selected ~= nil and gamedata.selected_world ~= 0 then
gamedata.singleplayer = true
core.start()
@ -121,7 +124,7 @@ local function main_button_handler(this, fields, name, tabdata)
delete_world_dlg:show()
end
end
return true
end
@ -131,14 +134,14 @@ local function main_button_handler(this, fields, name, tabdata)
local configdialog =
create_configure_world_dlg(
menudata.worldlist:get_raw_index(selected))
if (configdialog ~= nil) then
configdialog:set_parent(this)
this:hide()
configdialog:show()
end
end
return true
end
end

View File

@ -73,7 +73,7 @@ local function get_formspec(tabview, name, tabdata)
if not file_exists(infofile) then
infofile = current_texture_path .. DIR_DELIM .. "info.txt"
if file_exists(infofile) then
core.log("info.txt is depreciated. description.txt should be used instead.")
core.log("deprecated", "info.txt is deprecated. description.txt should be used instead.")
end
end
@ -96,8 +96,8 @@ local function get_formspec(tabview, name, tabdata)
return retval ..
render_texture_pack_list(list) ..
";" .. index .. "]" ..
"image[0.25,0.25;4.0,3.7;" .. core.formspec_escape(screenfile or no_screenshot) .. "]" ..
"textarea[0.6,3.5;3.7,1.5;;" .. core.formspec_escape(infotext or "") .. ";]"
"image[0.25,0.25;4.05,2.7;" .. core.formspec_escape(screenfile or no_screenshot) .. "]" ..
"textarea[0.6,2.85;3.7,1.5;;" .. core.formspec_escape(infotext or "") .. ";]"
end
--------------------------------------------------------------------------------

72
builtin/profiler/init.lua Normal file
View File

@ -0,0 +1,72 @@
--Minetest
--Copyright (C) 2016 T4im
--
--This program is free software; you can redistribute it and/or modify
--it under the terms of the GNU Lesser General Public License as published by
--the Free Software Foundation; either version 2.1 of the License, or
--(at your option) any later version.
--
--This program is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU Lesser General Public License for more details.
--
--You should have received a copy of the GNU Lesser General Public License along
--with this program; if not, write to the Free Software Foundation, Inc.,
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
local profiler_path = core.get_builtin_path()..DIR_DELIM.."profiler"..DIR_DELIM
local profiler = {}
local sampler = assert(loadfile(profiler_path .. "sampling.lua"))(profiler)
local instrumentation = assert(loadfile(profiler_path .. "instrumentation.lua"))(profiler, sampler)
local reporter = dofile(profiler_path .. "reporter.lua")
profiler.instrument = instrumentation.instrument
---
-- Delayed registration of the /profiler chat command
-- Is called later, after `core.register_chatcommand` was set up.
--
function profiler.init_chatcommand()
local instrument_profiler = core.setting_getbool("instrument.profiler") or false
if instrument_profiler then
instrumentation.init_chatcommand()
end
local param_usage = "print [filter] | dump [filter] | save [format [filter]] | reset"
core.register_chatcommand("profiler", {
description = "handle the profiler and profiling data",
params = param_usage,
privs = { server=true },
func = function(name, param)
local command, arg0 = string.match(param, "([^ ]+) ?(.*)")
local args = arg0 and string.split(arg0, " ")
if command == "dump" then
core.log("action", reporter.print(sampler.profile, arg0))
return true, "Statistics written to action log"
elseif command == "print" then
return true, reporter.print(sampler.profile, arg0)
elseif command == "save" then
return reporter.save(sampler.profile, args[1] or "txt", args[2])
elseif command == "reset" then
sampler.reset()
return true, "Statistics were reset"
end
return false, string.format(
"Usage: %s\n" ..
"Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).",
param_usage
)
end
})
if not instrument_profiler then
instrumentation.init_chatcommand()
end
end
sampler.init()
instrumentation.init()
return profiler

View File

@ -0,0 +1,232 @@
--Minetest
--Copyright (C) 2016 T4im
--
--This program is free software; you can redistribute it and/or modify
--it under the terms of the GNU Lesser General Public License as published by
--the Free Software Foundation; either version 2.1 of the License, or
--(at your option) any later version.
--
--This program is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU Lesser General Public License for more details.
--
--You should have received a copy of the GNU Lesser General Public License along
--with this program; if not, write to the Free Software Foundation, Inc.,
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
local format, pairs, type = string.format, pairs, type
local core, get_current_modname = core, core.get_current_modname
local profiler, sampler = ...
local instrument_builtin = core.setting_getbool("instrument.builtin") or false
local register_functions = {
register_globalstep = 0,
register_playerevent = 0,
register_on_placenode = 0,
register_on_dignode = 0,
register_on_punchnode = 0,
register_on_generated = 0,
register_on_newplayer = 0,
register_on_dieplayer = 0,
register_on_respawnplayer = 0,
register_on_prejoinplayer = 0,
register_on_joinplayer = 0,
register_on_leaveplayer = 0,
register_on_cheat = 0,
register_on_chat_message = 0,
register_on_player_receive_fields = 0,
register_on_craft = 0,
register_craft_predict = 0,
register_on_protection_violation = 0,
register_on_item_eat = 0,
register_on_punchplayer = 0,
register_on_player_hpchange = 0,
}
---
-- Create an unique instrument name.
-- Generate a missing label with a running index number.
--
local counts = {}
local function generate_name(def)
local class, label, func_name = def.class, def.label, def.func_name
if label then
if class or func_name then
return format("%s '%s' %s", class or "", label, func_name or ""):trim()
end
return format("%s", label):trim()
elseif label == false then
return format("%s", class or func_name):trim()
end
local index_id = def.mod .. (class or func_name)
local index = counts[index_id] or 1
counts[index_id] = index + 1
return format("%s[%d] %s", class or func_name, index, class and func_name or ""):trim()
end
---
-- Keep `measure` and the closure in `instrument` lean, as these, and their
-- directly called functions are the overhead that is caused by instrumentation.
--
local time, log = core.get_us_time, sampler.log
local function measure(modname, instrument_name, start, ...)
log(modname, instrument_name, time() - start)
return ...
end
--- Automatically instrument a function to measure and log to the sampler.
-- def = {
-- mod = "",
-- class = "",
-- func_name = "",
-- -- if nil, will create a label based on registration order
-- label = "" | false,
-- }
local function instrument(def)
if not def or not def.func then
return
end
def.mod = def.mod or get_current_modname()
local modname = def.mod
local instrument_name = generate_name(def)
local func = def.func
if not instrument_builtin and modname == "*builtin*" then
return func
end
return function(...)
-- This tail-call allows passing all return values of `func`
-- also called https://en.wikipedia.org/wiki/Continuation_passing_style
-- Compared to table creation and unpacking it won't lose `nil` returns
-- and is expected to be faster
-- `measure` will be executed after time() and func(...)
return measure(modname, instrument_name, time(), func(...))
end
end
local function can_be_called(func)
-- It has to be a function or callable table
return type(func) == "function" or
((type(func) == "table" or type(func) == "userdata") and
getmetatable(func) and getmetatable(func).__call)
end
local function assert_can_be_called(func, func_name, level)
if not can_be_called(func) then
-- Then throw an *helpful* error, by pointing on our caller instead of us.
error(format("Invalid argument to %s. Expected function-like type instead of '%s'.", func_name, type(func)), level + 1)
end
end
---
-- Wraps a registration function `func` in such a way,
-- that it will automatically instrument any callback function passed as first argument.
--
local function instrument_register(func, func_name)
local register_name = func_name:gsub("^register_", "", 1)
return function(callback, ...)
assert_can_be_called(callback, func_name, 2)
register_functions[func_name] = register_functions[func_name] + 1
return func(instrument {
func = callback,
func_name = register_name
}), ...
end
end
local function init_chatcommand()
if core.setting_getbool("instrument.chatcommand") or true then
local orig_register_chatcommand = core.register_chatcommand
core.register_chatcommand = function(cmd, def)
def.func = instrument {
func = def.func,
label = "/" .. cmd,
}
orig_register_chatcommand(cmd, def)
end
end
end
---
-- Start instrumenting selected functions
--
local function init()
local is_set = core.setting_getbool
if is_set("instrument.entity") or true then
-- Explicitly declare entity api-methods.
-- Simple iteration would ignore lookup via __index.
local entity_instrumentation = {
"on_activate",
"on_step",
"on_punch",
"rightclick",
"get_staticdata",
}
-- Wrap register_entity() to instrument them on registration.
local orig_register_entity = core.register_entity
core.register_entity = function(name, prototype)
local modname = get_current_modname()
for _, func_name in pairs(entity_instrumentation) do
prototype[func_name] = instrument {
func = prototype[func_name],
mod = modname,
func_name = func_name,
label = prototype.label,
}
end
orig_register_entity(name,prototype)
end
end
if is_set("instrument.abm") or true then
-- Wrap register_abm() to automatically instrument abms.
local orig_register_abm = core.register_abm
core.register_abm = function(spec)
spec.action = instrument {
func = spec.action,
class = "ABM",
label = spec.label,
}
orig_register_abm(spec)
end
end
if is_set("instrument.lbm") or true then
-- Wrap register_lbm() to automatically instrument lbms.
local orig_register_lbm = core.register_lbm
core.register_lbm = function(spec)
spec.action = instrument {
func = spec.action,
class = "LBM",
label = spec.label or spec.name,
}
orig_register_lbm(spec)
end
end
if is_set("instrument.global_callback") or true then
for func_name, _ in pairs(register_functions) do
core[func_name] = instrument_register(core[func_name], func_name)
end
end
if is_set("instrument.profiler") or false then
-- Measure overhead of instrumentation, but keep it down for functions
-- So keep the `return` for better optimization.
profiler.empty_instrument = instrument {
func = function() return end,
mod = "*profiler*",
class = "Instrumentation overhead",
label = false,
}
end
end
return {
register_functions = register_functions,
instrument = instrument,
init = init,
init_chatcommand = init_chatcommand,
}

View File

@ -0,0 +1,277 @@
--Minetest
--Copyright (C) 2016 T4im
--
--This program is free software; you can redistribute it and/or modify
--it under the terms of the GNU Lesser General Public License as published by
--the Free Software Foundation; either version 2.1 of the License, or
--(at your option) any later version.
--
--This program is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU Lesser General Public License for more details.
--
--You should have received a copy of the GNU Lesser General Public License along
--with this program; if not, write to the Free Software Foundation, Inc.,
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
local DIR_DELIM, LINE_DELIM = DIR_DELIM, "\n"
local table, unpack, string, pairs, io, os = table, unpack, string, pairs, io, os
local rep, sprintf, tonumber = string.rep, string.format, tonumber
local core, setting_get = core, core.setting_get
local reporter = {}
---
-- Shorten a string. End on an ellipsis if shortened.
--
local function shorten(str, length)
if str and str:len() > length then
return "..." .. str:sub(-(length-3))
end
return str
end
local function filter_matches(filter, text)
return not filter or string.match(text, filter)
end
local function format_number(number, fmt)
number = tonumber(number)
if not number then
return "N/A"
end
return sprintf(fmt or "%d", number)
end
local Formatter = {
new = function(self, object)
object = object or {}
object.out = {} -- output buffer
self.__index = self
return setmetatable(object, self)
end,
__tostring = function (self)
return table.concat(self.out, LINE_DELIM)
end,
print = function(self, text, ...)
if (...) then
text = sprintf(text, ...)
end
if text then
-- Avoid format unicode issues.
text = text:gsub("Ms", "µs")
end
table.insert(self.out, text or LINE_DELIM)
end,
flush = function(self)
table.insert(self.out, LINE_DELIM)
local text = table.concat(self.out, LINE_DELIM)
self.out = {}
return text
end
}
local widths = { 55, 9, 9, 9, 5, 5, 5 }
local txt_row_format = sprintf(" %%-%ds | %%%ds | %%%ds | %%%ds | %%%ds | %%%ds | %%%ds", unpack(widths))
local HR = {}
for i=1, #widths do
HR[i]= rep("-", widths[i])
end
-- ' | ' should break less with github than '-+-', when people are pasting there
HR = sprintf("-%s-", table.concat(HR, " | "))
local TxtFormatter = Formatter:new {
format_row = function(self, modname, instrument_name, statistics)
local label
if instrument_name then
label = shorten(instrument_name, widths[1] - 5)
label = sprintf(" - %s %s", label, rep(".", widths[1] - 5 - label:len()))
else -- Print mod_stats
label = shorten(modname, widths[1] - 2) .. ":"
end
self:print(txt_row_format, label,
format_number(statistics.time_min),
format_number(statistics.time_max),
format_number(statistics:get_time_avg()),
format_number(statistics.part_min, "%.1f"),
format_number(statistics.part_max, "%.1f"),
format_number(statistics:get_part_avg(), "%.1f")
)
end,
format = function(self, filter)
local profile = self.profile
self:print("Values below show absolute/relative times spend per server step by the instrumented function.")
self:print("A total of %d samples were taken", profile.stats_total.samples)
if filter then
self:print("The output is limited to '%s'", filter)
end
self:print()
self:print(
txt_row_format,
"instrumentation", "min Ms", "max Ms", "avg Ms", "min %", "max %", "avg %"
)
self:print(HR)
for modname,mod_stats in pairs(profile.stats) do
if filter_matches(filter, modname) then
self:format_row(modname, nil, mod_stats)
if mod_stats.instruments ~= nil then
for instrument_name, instrument_stats in pairs(mod_stats.instruments) do
self:format_row(nil, instrument_name, instrument_stats)
end
end
end
end
self:print(HR)
if not filter then
self:format_row("total", nil, profile.stats_total)
end
end
}
local CsvFormatter = Formatter:new {
format_row = function(self, modname, instrument_name, statistics)
self:print(
"%q,%q,%d,%d,%d,%d,%d,%f,%f,%f",
modname, instrument_name,
statistics.samples,
statistics.time_min,
statistics.time_max,
statistics:get_time_avg(),
statistics.time_all,
statistics.part_min,
statistics.part_max,
statistics:get_part_avg()
)
end,
format = function(self, filter)
self:print(
"%q,%q,%q,%q,%q,%q,%q,%q,%q,%q",
"modname", "instrumentation",
"samples",
"time min µs",
"time max µs",
"time avg µs",
"time all µs",
"part min %",
"part max %",
"part avg %"
)
for modname, mod_stats in pairs(self.profile.stats) do
if filter_matches(filter, modname) then
self:format_row(modname, "*", mod_stats)
if mod_stats.instruments ~= nil then
for instrument_name, instrument_stats in pairs(mod_stats.instruments) do
self:format_row(modname, instrument_name, instrument_stats)
end
end
end
end
end
}
local function format_statistics(profile, format, filter)
local formatter
if format == "csv" then
formatter = CsvFormatter:new {
profile = profile
}
else
formatter = TxtFormatter:new {
profile = profile
}
end
formatter:format(filter)
return formatter:flush()
end
---
-- Format the profile ready for display and
-- @return string to be printed to the console
--
function reporter.print(profile, filter)
if filter == "" then filter = nil end
return format_statistics(profile, "txt", filter)
end
---
-- Serialize the profile data and
-- @return serialized data to be saved to a file
--
local function serialize_profile(profile, format, filter)
if format == "lua" or format == "json" or format == "json_pretty" then
local stats = filter and {} or profile.stats
if filter then
for modname, mod_stats in pairs(profile.stats) do
if filter_matches(filter, modname) then
stats[modname] = mod_stats
end
end
end
if format == "lua" then
return core.serialize(stats)
elseif format == "json" then
return core.write_json(stats)
elseif format == "json_pretty" then
return core.write_json(stats, true)
end
end
-- Fall back to textual formats.
return format_statistics(profile, format, filter)
end
local worldpath = core.get_worldpath()
local function get_save_path(format, filter)
local report_path = setting_get("profiler.report_path") or ""
if report_path ~= "" then
core.mkdir(sprintf("%s%s%s", worldpath, DIR_DELIM, report_path))
end
return (sprintf(
"%s/%s/profile-%s%s.%s",
worldpath,
report_path,
os.date("%Y%m%dT%H%M%S"),
filter and ("-" .. filter) or "",
format
):gsub("[/\\]+", DIR_DELIM))-- Clean up delims
end
---
-- Save the profile to the world path.
-- @return success, log message
--
function reporter.save(profile, format, filter)
if not format or format == "" then
format = setting_get("profiler.default_report_format") or "txt"
end
if filter == "" then
filter = nil
end
local path = get_save_path(format, filter)
local output, io_err = io.open(path, "w")
if not output then
return false, "Saving of profile failed with: " .. io_err
end
local content, err = serialize_profile(profile, format, filter)
if not content then
output:close()
return false, "Saving of profile failed with: " .. err
end
output:write(content)
output:close()
local logmessage = "Profile saved to " .. path
core.log("action", logmessage)
return true, logmessage
end
return reporter

View File

@ -0,0 +1,206 @@
--Minetest
--Copyright (C) 2016 T4im
--
--This program is free software; you can redistribute it and/or modify
--it under the terms of the GNU Lesser General Public License as published by
--the Free Software Foundation; either version 2.1 of the License, or
--(at your option) any later version.
--
--This program is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU Lesser General Public License for more details.
--
--You should have received a copy of the GNU Lesser General Public License along
--with this program; if not, write to the Free Software Foundation, Inc.,
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
local setmetatable = setmetatable
local pairs, format = pairs, string.format
local min, max, huge = math.min, math.max, math.huge
local core = core
local profiler = ...
-- Split sampler and profile up, to possibly allow for rotation later.
local sampler = {}
local profile
local stats_total
local logged_time, logged_data
local _stat_mt = {
get_time_avg = function(self)
return self.time_all/self.samples
end,
get_part_avg = function(self)
if not self.part_all then
return 100 -- Extra handling for "total"
end
return self.part_all/self.samples
end,
}
_stat_mt.__index = _stat_mt
function sampler.reset()
-- Accumulated logged time since last sample.
-- This helps determining, the relative time a mod used up.
logged_time = 0
-- The measurements taken through instrumentation since last sample.
logged_data = {}
profile = {
-- Current mod statistics (max/min over the entire mod lifespan)
-- Mod specific instrumentation statistics are nested within.
stats = {},
-- Current stats over all mods.
stats_total = setmetatable({
samples = 0,
time_min = huge,
time_max = 0,
time_all = 0,
part_min = 100,
part_max = 100
}, _stat_mt)
}
stats_total = profile.stats_total
-- Provide access to the most recent profile.
sampler.profile = profile
end
---
-- Log a measurement for the sampler to pick up later.
-- Keep `log` and its often called functions lean.
-- It will directly add to the instrumentation overhead.
--
function sampler.log(modname, instrument_name, time_diff)
if time_diff <= 0 then
if time_diff < 0 then
-- This **might** have happened on a semi-regular basis with huge mods,
-- resulting in negative statistics (perhaps midnight time jumps or ntp corrections?).
core.log("warning", format(
"Time travel of %s::%s by %dµs.",
modname, instrument_name, time_diff
))
end
-- Throwing these away is better, than having them mess with the overall result.
return
end
local mod_data = logged_data[modname]
if mod_data == nil then
mod_data = {}
logged_data[modname] = mod_data
end
mod_data[instrument_name] = (mod_data[instrument_name] or 0) + time_diff
-- Update logged time since last sample.
logged_time = logged_time + time_diff
end
---
-- Return a requested statistic.
-- Initialize if necessary.
--
local function get_statistic(stats_table, name)
local statistic = stats_table[name]
if statistic == nil then
statistic = setmetatable({
samples = 0,
time_min = huge,
time_max = 0,
time_all = 0,
part_min = 100,
part_max = 0,
part_all = 0,
}, _stat_mt)
stats_table[name] = statistic
end
return statistic
end
---
-- Update a statistic table
--
local function update_statistic(stats_table, time)
stats_table.samples = stats_table.samples + 1
-- Update absolute time (µs) spend by the subject
stats_table.time_min = min(stats_table.time_min, time)
stats_table.time_max = max(stats_table.time_max, time)
stats_table.time_all = stats_table.time_all + time
-- Update relative time (%) of this sample spend by the subject
local current_part = (time/logged_time) * 100
stats_table.part_min = min(stats_table.part_min, current_part)
stats_table.part_max = max(stats_table.part_max, current_part)
stats_table.part_all = stats_table.part_all + current_part
end
---
-- Sample all logged measurements each server step.
-- Like any globalstep function, this should not be too heavy,
-- but does not add to the instrumentation overhead.
--
local function sample(dtime)
-- Rare, but happens and is currently of no informational value.
if logged_time == 0 then
return
end
for modname, instruments in pairs(logged_data) do
local mod_stats = get_statistic(profile.stats, modname)
if mod_stats.instruments == nil then
-- Current statistics for each instrumentation component
mod_stats.instruments = {}
end
local mod_time = 0
for instrument_name, time in pairs(instruments) do
if time > 0 then
mod_time = mod_time + time
local instrument_stats = get_statistic(mod_stats.instruments, instrument_name)
-- Update time of this sample spend by the instrumented function.
update_statistic(instrument_stats, time)
-- Reset logged data for the next sample.
instruments[instrument_name] = 0
end
end
-- Update time of this sample spend by this mod.
update_statistic(mod_stats, mod_time)
end
-- Update the total time spend over all mods.
stats_total.time_min = min(stats_total.time_min, logged_time)
stats_total.time_max = max(stats_total.time_max, logged_time)
stats_total.time_all = stats_total.time_all + logged_time
stats_total.samples = stats_total.samples + 1
logged_time = 0
end
---
-- Setup empty profile and register the sampling function
--
function sampler.init()
sampler.reset()
if core.setting_getbool("instrument.profiler") then
core.register_globalstep(function()
if logged_time == 0 then
return
end
return profiler.empty_instrument()
end)
core.register_globalstep(profiler.instrument {
func = sample,
mod = "*profiler*",
class = "Sampler (update stats)",
label = false,
})
else
core.register_globalstep(sample)
end
end
return sampler

View File

@ -3,7 +3,7 @@
# General format:
# name (Readable name) type type_args
#
# Note that the parts are seperated by exactly one space
# Note that the parts are separated by exactly one space
#
# `type` can be:
# - int
@ -70,7 +70,7 @@ fast_move (Fast movement) bool false
# This requires the "noclip" privilege on the server.
noclip (Noclip) bool false
# Smooths camera when moving and looking around.
# Smooths camera when looking around. Also called look or mouse smoothing.
# Useful for recording videos.
cinematic (Cinematic mode) bool false
@ -104,6 +104,17 @@ random_input (Random input) bool false
# Continuous forward movement (only used for testing).
continuous_forward (Continuous forward) bool false
# Enable Joysticks
enable_joysticks (Enable Joysticks) bool false
# The time in seconds it takes between repeated events
# when holding down a joystick button combination.
repeat_joystick_button_time (Joystick button repetition interval) float 0.17
# The sensitivity of the joystick axes for moving the
# ingame view frustum around.
joystick_frustum_sensitivity (Joystick frustum sensitivity) float 170
# Key for moving the player forward.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_forward (Forward key) key KEY_KEY_W
@ -165,9 +176,13 @@ keymap_fastmove (Fast key) key KEY_KEY_J
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_noclip (Noclip key) key KEY_KEY_H
# Key for toggling autorun.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_autorun (Autorun key) key
# Key for toggling cinematic mode.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_cinematic (Cinematic mode key) key KEY_F8
keymap_cinematic (Cinematic mode key) key
# Key for toggling display of minimap.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
@ -193,7 +208,7 @@ keymap_toggle_chat (Chat toggle key) key KEY_F2
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_toggle_force_fog_off (Fog toggle key) key KEY_F3
# Key for toggling the camrea update. Only used for development
# Key for toggling the camera update. Only used for development
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
keymap_toggle_update_camera (Camera update toggle key) key
@ -236,7 +251,7 @@ remote_port (Remote port) int 30000 1 65535
# Enable if you want to connect to 0.4.12 servers and before.
# Servers starting with 0.4.13 will work, 0.4.12-dev servers may work.
# Disabling this option will protect your password better.
send_pre_v25_init (Support older servers) bool true
send_pre_v25_init (Support older servers) bool false
# Save the map received by the client on disk.
enable_local_map_saving (Saving map received from server) bool false
@ -324,7 +339,7 @@ fsaa (FSAA) enum 0 0,1,2,4,8,16
[***Shaders]
# Shaders allow advanced visul effects and may increase performance on some video cards.
# Shaders allow advanced visual effects and may increase performance on some video cards.
# Thy only work with the OpenGL video backend.
enable_shaders (Shaders) bool true
@ -403,8 +418,7 @@ fps_max (Maximum FPS) int 60
pause_fps_max (FPS in pause menu) int 20
# View distance in nodes.
# Min = 20
viewing_range (Viewing range) int 100
viewing_range (Viewing range) int 100 20 4000
# Far view distance in nodes.
# Only for Android.
@ -428,6 +442,10 @@ vsync (V-Sync) bool false
# Field of view in degrees.
fov (Field of view) int 72 30 160
# Field of view while zooming in degrees.
# This requires the "zoom" privilege on the server.
zoom_fov (Field of view for zoom) int 15 15 160
# Adjust the gamma encoding for the light tables. Lower numbers are brighter.
# This setting is for the client only and is ignored by the server.
display_gamma (Gamma) float 1.8 1.0 3.0
@ -513,6 +531,9 @@ ambient_occlusion_gamma (Ambient occlusion gamma) float 2.2 0.25 4.0
# Enables animation of inventory items.
inventory_items_animations (Inventory items animations) bool false
# Fraction of the visible distance at which fog starts to be rendered
fog_start (Fog Start) float 0.4 0.0 0.99
[**Menus]
# Use a cloud animation for the main menu background.
@ -533,7 +554,7 @@ gui_scaling_filter (GUI scaling filter) bool false
# When gui_scaling_filter_txr2img is true, copy those images
# from hardware to software for scaling. When false, fall back
# to the old scaling method, for video drivers that don't
# propery support downloading textures back from hardware.
# properly support downloading textures back from hardware.
gui_scaling_filter_txr2img (GUI scaling filter txr2img) bool true
# Delay showing tooltips, stated in milliseconds.
@ -545,13 +566,13 @@ freetype (Freetype fonts) bool true
# Path to TrueTypeFont or bitmap.
font_path (Font path) path fonts/liberationsans.ttf
font_size (Font size) int 15
font_size (Font size) int 16
# Font shadow offset, if 0 then shadow will not be drawn.
font_shadow (Font shadow) int 1
# Font shadow alpha (opaqueness, between 0 and 255).
font_shadow_alpha (Font shadow alpha) int 128 0 255
font_shadow_alpha (Font shadow alpha) int 127 0 255
mono_font_path (Monospace font path) path fonts/liberationmono.ttf
@ -618,6 +639,11 @@ server_announce (Announce server) bool false
# If you want to announce your ipv6 address, use serverlist_url = v6.servers.minetest.net.
serverlist_url (Serverlist URL) string servers.minetest.net
# Disable escape sequences, e.g. chat coloring.
# Use this if you want to run a server with pre-0.4.14 clients and you want to disable
# the escape sequences generated by mods.
disable_escape_sequences (Disable escape sequences) bool false
[*Network]
# Network port to listen (UDP).
@ -645,15 +671,15 @@ ipv6_server (IPv6 server) bool false
[**Advanced]
# How many blocks are flying in the wire simultaneously per client.
max_simultaneous_block_sends_per_client (Maximum simultaneously blocks send per client) int 10
# Maximum number of blocks that are simultaneously sent per client.
max_simultaneous_block_sends_per_client (Maximum simultaneous block sends per client) int 10
# How many blocks are flying in the wire simultaneously for the whole server.
max_simultaneous_block_sends_server_total (Maximum simultaneously bocks send total) int 40
# Maximum number of blocks that are simultaneously sent in total.
max_simultaneous_block_sends_server_total (Maximum simultaneous block sends total) int 40
# To reduce lag, block transfers are slowed down when a player is building something.
# This determines how long they are slowed down after placing or removing a node.
full_block_send_enable_min_time_from_building () float 2.0
full_block_send_enable_min_time_from_building (Delay in sending blocks after building) float 2.0
# Maximum number of packets sent per send step, if you have a slow connection
# try reducing it, but don't reduce it to a number below double of targeted
@ -753,6 +779,15 @@ time_speed (Time speed) int 72
# Interval of saving important changes in the world, stated in seconds.
server_map_save_interval (Map save interval) float 5.3
# Set the maximum character length of a chat message sent by clients.
# chat_message_max_size int 500
# Limit a single player to send X messages per 10 seconds.
# chat_message_limit_per_10sec float 10.0
# Kick player if send more than X messages per 10 seconds.
# chat_message_limit_trigger_kick int 50
[**Physics]
movement_acceleration_default (Default acceleration) float 3
@ -777,15 +812,6 @@ movement_gravity (Gravity) float 9.81
# - error: abort on usage of deprecated call (suggested for mod developers).
deprecated_lua_api_handling (Deprecated Lua API handling) enum legacy legacy,log,error
# Useful for mod developers.
mod_profiling (Mod profiling) bool false
# Detailed mod profile data. Useful for mod developers.
detailed_profiling (Detailed mod profiling) bool false
# Profiler data print interval. 0 = disable. Useful for developers.
profiler_print_interval (Profiling print interval) int 0
# Number of extra blocks that can be loaded by /clearobjects at once.
# This is a trade-off between sqlite transaction overhead and
# memory consumption (4096=100MB, as a rule of thumb).
@ -796,7 +822,7 @@ max_clearobjects_extra_loaded_blocks (Max. clearobjects extra blocks) int 4096
server_unload_unused_data_timeout (Unload unused server data) int 29
# Maximum number of statically stored objects in a block.
max_objects_per_block (Maxmimum objects per block) int 49
max_objects_per_block (Maximum objects per block) int 64
# See http://www.sqlite.org/pragma.html#pragma_synchronous
sqlite_synchronous (Synchronous SQLite) enum 2 0,1,2
@ -828,11 +854,18 @@ liquid_queue_purge_time (Liquid queue purge time) int 0
# Liquid update interval in seconds.
liquid_update (Liquid update tick) float 1.0
# At this distance the server will aggressively optimize which blocks are sent to clients.
# Small values potentially improve performance a lot, at the expense of visible rendering glitches.
# (some blocks will not be rendered under water and in caves, as well as sometimes on land)
# Setting this to a value greater than max_block_send_distance disables this optimization.
# Stated in mapblocks (16 nodes)
block_send_optimize_distance (block send optimize distance) int 4 2
[*Mapgen]
# Name of map generator to be used when creating a new world.
# Creating a world in the main menu will override this.
mg_name (Mapgen name) enum v6 v5,v6,v7,flat,valleys,fractal,singlenode
mg_name (Mapgen name) enum v7 v5,v6,v7,flat,valleys,fractal,singlenode
# Water surface level of the world.
water_level (Water level) int 1
@ -851,8 +884,6 @@ map_generation_limit (Map generation limit) int 31000 0 31000
# Global map generation attributes.
# In Mapgen v6 the 'decorations' flag controls all decorations except trees
# and junglegrass, in all other mapgens this flag controls all decorations.
# The default flags set in the engine are: caves, light, decorations
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mg_flags (Mapgen flags) flags caves,dungeons,light,decorations caves,dungeons,light,decorations,nocaves,nodungeons,nolight,nodecorations
@ -913,8 +944,6 @@ mgv5_np_cave2 (Mapgen v5 cave2 noise parameters) noise_params 0, 12, (50, 50, 50
# Map generation attributes specific to Mapgen v6.
# When snowbiomes are enabled jungles are automatically enabled, the 'jungles' flag is ignored.
# The default flags set in the engine are: biomeblend, mudflow
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mgv6_spflags (Mapgen v6 flags) flags jungles,biomeblend,mudflow,snowbiomes,trees jungles,biomeblend,mudflow,snowbiomes,flat,trees,nojungles,nobiomeblend,nomudflow,nosnowbiomes,noflat,notrees
@ -939,15 +968,27 @@ mgv6_np_apple_trees (Mapgen v6 apple trees noise parameters) noise_params 0, 1,
[***Mapgen v7]
# Map generation attributes specific to Mapgen v7.
# The 'ridges' flag controls the rivers.
# The default flags set in the engine are: mountains, ridges
# The flags string modifies the engine defaults.
# The 'ridges' flag enables the rivers.
# Floatlands are currently experimental and subject to change.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mgv7_spflags (Mapgen v7 flags) flags mountains,ridges mountains,ridges,nomountains,noridges
mgv7_spflags (Mapgen v7 flags) flags mountains,ridges mountains,ridges,floatlands,nomountains,noridges,nofloatlands
# Controls width of tunnels, a smaller value creates wider tunnels.
mgv7_cave_width (Mapgen v7 cave width) float 0.3
mgv7_cave_width (Mapgen v7 cave width) float 0.09
# Controls the density of floatland mountain terrain.
# Is an offset added to the 'np_mountain' noise value.
mgv7_float_mount_density (Mapgen v7 floatland mountain density) float 0.6
# Typical maximum height, above and below midpoint, of floatland mountain terrain.
mgv7_float_mount_height (Mapgen v7 floatland mountain height) float 128.0
# Y-level of floatland midpoint and lake surface.
mgv7_floatland_level (Mapgen v7 floatland level) int 1280
# Y-level to which floatland shadows extend.
mgv7_shadow_limit (Mapgen v7 shadow limit) int 1024
mgv7_np_terrain_base (Mapgen v7 terrain base noise parameters) noise_params 4, 70, (600, 600, 600), 82341, 5, 0.6, 2.0
mgv7_np_terrain_alt (Mapgen v7 terrain altitude noise parameters) noise_params 4, 25, (600, 600, 600), 5934, 5, 0.6, 2.0
@ -955,18 +996,18 @@ mgv7_np_terrain_persist (Mapgen v7 terrain persistation noise parameters) noise_
mgv7_np_height_select (Mapgen v7 height select noise parameters) noise_params -8, 16, (500, 500, 500), 4213, 6, 0.7, 2.0
mgv7_np_filler_depth (Mapgen v7 filler depth noise parameters) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
mgv7_np_mount_height (Mapgen v7 mount height noise parameters) noise_params 256, 112, (1000, 1000, 1000), 72449, 3, 0.6, 2.0
mgv7_np_ridge_uwater (Mapgen v7 ridge water noise parameters) noise_params 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0
mgv7_np_ridge_uwater (Mapgen v7 river course noise parameters) noise_params 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0
mgv7_np_floatland_base (Mapgen v7 floatland base terrain noise parameters) noise_params -0.6, 1.5, (600, 600, 600), 114, 5, 0.6, 2.0
mgv7_np_float_base_height (Mapgen v7 floatland base terrain height noise parameters) noise_params 48, 24, (300, 300, 300), 907, 4, 0.7, 2.0
mgv7_np_mountain (Mapgen v7 mountain noise parameters) noise_params -0.6, 1, (250, 350, 250), 5333, 5, 0.63, 2.0
mgv7_np_ridge (Mapgen v7 ridge noise parameters) noise_params 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
mgv7_np_cave1 (Mapgen v7 cave1 noise parameters) noise_params 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
mgv7_np_cave2 (Mapgen v7 cave2 noise parameters) noise_params 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
mgv7_np_ridge (Mapgen v7 river channel wall noise parameters) noise_params 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
mgv7_np_cave1 (Mapgen v7 cave1 noise parameters) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
mgv7_np_cave2 (Mapgen v7 cave2 noise parameters) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
[***Mapgen flat]
# Map generation attributes specific to Mapgen flat.
# Occasional lakes and hills can be added to the flat world.
# The default flags set in the engine are: none
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mgflat_spflags (Mapgen flat flags) flags lakes,hills,,nolakes,nohills
@ -978,7 +1019,7 @@ mgflat_ground_level (Mapgen flat ground level) int 8
mgflat_large_cave_depth (Mapgen flat large cave depth) int -33
# Controls width of tunnels, a smaller value creates wider tunnels.
mgflat_cave_width (Mapgen flat cave width) float 0.3
mgflat_cave_width (Mapgen flat cave width) float 0.09
# Terrain noise threshold for lakes.
# Controls proportion of world area covered by lakes.
@ -1002,13 +1043,13 @@ mgflat_hill_steepness (Mapgen flat hill steepness) float 64.0
mgflat_np_terrain (Mapgen flat terrain noise parameters) noise_params 0, 1, (600, 600, 600), 7244, 5, 0.6, 2.0
mgflat_np_filler_depth (Mapgen flat filler depth noise parameters) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
mgflat_np_cave1 (Mapgen flat cave1 noise parameters) noise_params 0, 12, (128, 128, 128), 52534, 4, 0.5, 2.0
mgflat_np_cave2 (Mapgen flat cave2 noise parameters) noise_params 0, 12, (128, 128, 128), 10325, 4, 0.5, 2.0
mgflat_np_cave1 (Mapgen flat cave1 noise parameters) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
mgflat_np_cave2 (Mapgen flat cave2 noise parameters) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
[***Mapgen fractal]
# Controls width of tunnels, a smaller value creates wider tunnels.
mgfractal_cave_width (Mapgen fractal cave width) float 0.3
mgfractal_cave_width (Mapgen fractal cave width) float 0.09
# Choice of 18 fractals from 9 formulas.
# 1 = 4D "Roundy" mandelbrot set.
@ -1069,8 +1110,8 @@ mgfractal_julia_w (Mapgen fractal julia w) float 0.33
mgfractal_np_seabed (Mapgen fractal seabed noise parameters) noise_params -14, 9, (600, 600, 600), 41900, 5, 0.6, 2.0
mgfractal_np_filler_depth (Mapgen fractal filler depth noise parameters) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
mgfractal_np_cave1 (Mapgen fractal cave1 noise parameters) noise_params 0, 12, (128, 128, 128), 52534, 4, 0.5, 2.0
mgfractal_np_cave2 (Mapgen fractal cave2 noise parameters) noise_params 0, 12, (128, 128, 128), 10325, 4, 0.5, 2.0
mgfractal_np_cave1 (Mapgen fractal cave1 noise parameters) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
mgfractal_np_cave2 (Mapgen fractal cave2 noise parameters) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
# Mapgen Valleys parameters
[***Mapgen Valleys]
@ -1082,8 +1123,6 @@ mgfractal_np_cave2 (Mapgen fractal cave2 noise parameters) noise_params 0, 12, (
# 'altitude_chill' makes higher elevations colder, which may cause biome issues.
# 'humid_rivers' modifies the humidity around rivers and in areas where water would tend to pool,
# it may interfere with delicately adjusted biomes.
# The default flags set in the engine are: altitude_chill, humid_rivers
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
mg_valleys_spflags (Valleys C Flags) flags altitude_chill,humid_rivers altitude_chill,noaltitude_chill,humid_rivers,nohumid_rivers
@ -1112,16 +1151,16 @@ mgvalleys_river_size (River Size) int 5
mgvalleys_water_features (Water Features) int 0
# Controls width of tunnels, a smaller value creates wider tunnels.
mgvalleys_cave_width (Cave width) float 0.3
mgvalleys_cave_width (Cave width) float 0.09
# Noise parameters
[****Noises]
# Caves and tunnels form at the intersection of the two noises
mgvalleys_np_cave1 (Cave noise #1) noise_params 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
mgvalleys_np_cave1 (Cave noise #1) noise_params 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
# Caves and tunnels form at the intersection of the two noises
mgvalleys_np_cave2 (Cave noise #2) noise_params 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
mgvalleys_np_cave2 (Cave noise #2) noise_params 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
# The depth of dirt or other filler
mgvalleys_np_filler_depth (Filler Depth) noise_params 0, 1.2, (256, 256, 256), 1605, 3, 0.5, 2.0
@ -1156,10 +1195,55 @@ secure.enable_security (Enable mod security) bool false
# functions even when mod security is on (via request_insecure_environment()).
secure.trusted_mods (Trusted mods) string
# Comma-seperated list of mods that are allowed to access HTTP APIs, which
# Comma-separated list of mods that are allowed to access HTTP APIs, which
# allow them to upload and download data to/from the internet.
secure.http_mods (HTTP Mods) string
[*Advanced]
[**Profiling]
# Load the game profiler to collect game profiling data.
# Provides a /profiler command to access the compiled profile.
# Useful for mod developers and server operators.
profiler.load (Load the game profiler) bool false
# The default format in which profiles are being saved,
# when calling `/profiler save [format]` without format.
profiler.default_report_format (Default report format) enum txt txt,csv,lua,json,json_pretty
# The file path relative to your worldpath in which profiles will be saved to.
#
profiler.report_path (Report path) string ""
[***Instrumentation]
# Instrument the methods of entities on registration.
instrument.entity (Entity methods) bool true
# Instrument the action function of Active Block Modifiers on registration.
instrument.abm (Active Block Modifiers) bool true
# Instrument the action function of Loading Block Modifiers on registration.
instrument.lbm (Loading Block Modifiers) bool true
# Instrument chatcommands on registration.
instrument.chatcommand (Chatcommands) bool true
# Instrument global callback functions on registration.
# (anything you pass to a minetest.register_*() function)
instrument.global_callback (Global callbacks) bool true
[****Advanced]
# Instrument builtin.
# This is usually only needed by core/builtin contributors
instrument.builtin (Builtin) bool false
# Have the profiler instrument itself:
# * Instrument an empty function.
# This estimates the overhead, that instrumentation is adding (+1 function call).
# * Instrument the sampler being used to update the statistics.
instrument.profiler (Profiler) bool false
[Client and Server]
# Name of the player.
@ -1169,7 +1253,7 @@ name (Player name) string
# Set the language. Leave empty to use the system language.
# A restart is required after changing this.
language (Language) enum ,be,cs,da,de,eo,es,et,fr,hu,id,it,ja,jbo,ko,ky,lt,nb,nl,pl,pt,pt_BR,ro,ru,tr,uk,zh_CN,zh_TW
language (Language) enum ,be,ca,cs,da,de,en,eo,es,et,fr,he,hu,id,it,ja,jbo,ko,ky,lt,nb,nl,pl,pt,pt_BR,ro,ru,sr_Cyrl,tr,uk,zh_CN,zh_TW
# Level of logging to be written to debug.txt:
# - <nothing> (no logging)
@ -1215,3 +1299,6 @@ modstore_download_url (Modstore download URL) string https://forum.minetest.net/
modstore_listmods_url (Modstore mods list URL) string https://forum.minetest.net/mmdb/mods/
modstore_details_url (Modstore details URL) string https://forum.minetest.net/mmdb/mod/*/
# Print the engine's profiling data in regular intervals (in seconds). 0 = disable. Useful for developers.
profiler_print_interval (Engine profiling data print interval) int 0

View File

@ -1,6 +1,4 @@
uniform mat4 mWorldViewProj;
uniform mat4 mInvWorld;
uniform mat4 mTransWorld;
uniform mat4 mWorld;
void main(void)

View File

@ -19,6 +19,8 @@ bool normalTexturePresent = false;
const float e = 2.718281828459;
const float BS = 10.0;
const float fogStart = FOG_START;
const float fogShadingParameter = 1 / ( 1 - fogStart);
#ifdef ENABLE_TONE_MAPPING
@ -194,24 +196,25 @@ void main(void)
vec4 col = vec4(color.rgb * gl_Color.rgb, 1.0);
#if MATERIAL_TYPE == TILE_MATERIAL_LIQUID_TRANSPARENT
float alpha = gl_Color.a;
if (fogDistance != 0.0) {
float d = max(0.0, min(vPosition.z / fogDistance * 1.5 - 0.6, 1.0));
alpha = mix(alpha, 0.0, d);
}
col = vec4(col.rgb, alpha);
#else
if (fogDistance != 0.0) {
float d = max(0.0, min(vPosition.z / fogDistance * 1.5 - 0.6, 1.0));
col = mix(col, skyBgColor, d);
}
col = vec4(col.rgb, base.a);
#ifdef ENABLE_TONE_MAPPING
col = applyToneMapping(col);
#endif
#ifdef ENABLE_TONE_MAPPING
gl_FragColor = applyToneMapping(col);
#else
if (fogDistance != 0.0) {
// Due to a bug in some (older ?) graphics stacks (possibly in the glsl compiler ?),
// the fog will only be rendered correctly if the last operation before the
// clamp() is an addition. Else, the clamp() seems to be ignored.
// E.g. the following won't work:
// float clarity = clamp(fogShadingParameter
// * (fogDistance - length(eyeVec)) / fogDistance), 0.0, 1.0);
// As additions usually come for free following a multiplication, the new formula
// should be more efficient as well.
// Note: clarity = (1 - fogginess)
float clarity = clamp(fogShadingParameter
- fogShadingParameter * length(eyeVec) / fogDistance, 0.0, 1.0);
col = mix(skyBgColor, col, clarity);
}
col = vec4(col.rgb, base.a);
gl_FragColor = col;
#endif
}

View File

@ -1,6 +1,4 @@
uniform mat4 mWorldViewProj;
uniform mat4 mInvWorld;
uniform mat4 mTransWorld;
uniform mat4 mWorld;
uniform float dayNightRatio;

View File

@ -21,6 +21,8 @@ bool texSeamless = false;
const float e = 2.718281828459;
const float BS = 10.0;
const float fogStart = FOG_START;
const float fogShadingParameter = 1 / ( 1 - fogStart);
#ifdef ENABLE_TONE_MAPPING
@ -150,24 +152,25 @@ vec4 base = texture2D(baseTexture, uv).rgba;
vec4 col = vec4(color.rgb * gl_Color.rgb, 1.0);
#if MATERIAL_TYPE == TILE_MATERIAL_LIQUID_TRANSPARENT || MATERIAL_TYPE == TILE_MATERIAL_LIQUID_OPAQUE
float alpha = gl_Color.a;
if (fogDistance != 0.0) {
float d = max(0.0, min(vPosition.z / fogDistance * 1.5 - 0.6, 1.0));
alpha = mix(alpha, 0.0, d);
}
col = vec4(col.rgb, alpha);
#else
if (fogDistance != 0.0) {
float d = max(0.0, min(vPosition.z / fogDistance * 1.5 - 0.6, 1.0));
col = mix(col, skyBgColor, d);
}
col = vec4(col.rgb, base.a);
#ifdef ENABLE_TONE_MAPPING
col = applyToneMapping(col);
#endif
#ifdef ENABLE_TONE_MAPPING
gl_FragColor = applyToneMapping(col);
#else
if (fogDistance != 0.0) {
// Due to a bug in some (older ?) graphics stacks (possibly in the glsl compiler ?),
// the fog will only be rendered correctly if the last operation before the
// clamp() is an addition. Else, the clamp() seems to be ignored.
// E.g. the following won't work:
// float clarity = clamp(fogShadingParameter
// * (fogDistance - length(eyeVec)) / fogDistance), 0.0, 1.0);
// As additions usually come for free following a multiplication, the new formula
// should be more efficient as well.
// Note: clarity = (1 - fogginess)
float clarity = clamp(fogShadingParameter
- fogShadingParameter * length(eyeVec) / fogDistance, 0.0, 1.0);
col = mix(skyBgColor, col, clarity);
}
col = vec4(col.rgb, base.a);
gl_FragColor = col;
#endif
}

View File

@ -1,6 +1,4 @@
uniform mat4 mWorldViewProj;
uniform mat4 mInvWorld;
uniform mat4 mTransWorld;
uniform mat4 mWorld;
uniform float dayNightRatio;

View File

@ -19,6 +19,8 @@ bool texSeamless = false;
const float e = 2.718281828459;
const float BS = 10.0;
const float fogStart = FOG_START;
const float fogShadingParameter = 1 / ( 1 - fogStart);
void get_texture_flags()
{
@ -107,8 +109,18 @@ void main(void)
vec4 col = vec4(color.rgb, base.a);
col *= gl_Color;
if (fogDistance != 0.0) {
float d = max(0.0, min(vPosition.z / fogDistance * 1.5 - 0.6, 1.0));
col = mix(col, skyBgColor, d);
// Due to a bug in some (older ?) graphics stacks (possibly in the glsl compiler ?),
// the fog will only be rendered correctly if the last operation before the
// clamp() is an addition. Else, the clamp() seems to be ignored.
// E.g. the following won't work:
// float clarity = clamp(fogShadingParameter
// * (fogDistance - length(eyeVec)) / fogDistance), 0.0, 1.0);
// As additions usually come for free following a multiplication, the new formula
// should be more efficient as well.
// Note: clarity = (1 - fogginess)
float clarity = clamp(fogShadingParameter
- fogShadingParameter * length(eyeVec) / fogDistance, 0.0, 1.0);
col = mix(skyBgColor, col, clarity);
}
gl_FragColor = vec4(col.rgb, base.a);
}

View File

@ -1,6 +1,4 @@
uniform mat4 mWorldViewProj;
uniform mat4 mInvWorld;
uniform mat4 mTransWorld;
uniform mat4 mWorld;
uniform float dayNightRatio;

View File

@ -20,8 +20,8 @@ endif()
if(NOT JSONCPP_FOUND)
message(STATUS "Using bundled JSONCPP library.")
set(JSON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/json)
set(JSON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/jsoncpp)
set(JSON_LIBRARY jsoncpp)
add_subdirectory(json)
add_subdirectory(jsoncpp/json)
endif()

View File

@ -115,7 +115,7 @@ if(CURSES_USE_NCURSESW)
get_filename_component(_cursesParentDir "${_cursesLibDir}" PATH)
find_path(CURSES_INCLUDE_PATH
NAMES ncursesw/ncurses.h ncursesw/curses.h
NAMES ncursesw/ncurses.h ncursesw/curses.h ncurses.h curses.h
HINTS "${_cursesParentDir}/include"
)

View File

@ -1,36 +1,44 @@
Default Controls
-----------------
- WASD: move
- Space: jump/climb
- Shift: sneak/go down
- Q: drop itemstack (+ SHIFT for single item)
- I: inventory
- Mouse: turn/look
- Mouse left: dig/punch
- Mouse right: place/use
- Mouse wheel: select item
- T: chat
- 1-8: select item
- Move mouse: Look around
- W, A, S, D: Move
- Space: Jump/move up
- Shift: Sneak/move down
- Q: Drop itemstack
- Shift + Q: Drop single item
- Left mouse button: Dig/punch/take item
- Right mouse button: Place/use
- Shift + right mouse button: Build (without using)
- I: Inventory menu
- Mouse wheel: Select item
- 0-9: Select item
- Z: Zoom (needs zoom privilege)
- T: Chat
- /: Commad
- Esc: pause menu (pauses only singleplayer game)
- R: Enable/Disable full range view
- Esc: Pause menu/abort/exit (pauses only singleplayer game)
- R: Enable/disable full range view
- +: Increase view range
- -: Decrease view range
- K: Enable/Disable fly (needs fly privilege)
- J: Enable/Disable fast (needs fast privilege)
- H: Enable/Disable noclip (needs noclip privilege)
- K: Enable/disable fly mode (needs fly privilege)
- J: Enable/disable fast mode (needs fast privilege)
- H: Enable/disable noclip mode (needs noclip privilege)
- F1: Hide/Show HUD
- F2: Hide/Show Chat
- F3: Disable/Enable Fog
- F4: Disable/Enable Camera update (Mapblocks are not updated anymore when disabled)
- F5: Toogle through debug info screens
- F6: Toogle through output data
- F7: Toggle through camera modes
- F10: Show/Hide console
- F1: Hide/show HUD
- F2: Hide/show chat
- F3: Disable/enable fog
- F4: Disable/enable camera update (Mapblocks are not updated anymore when disabled, disabled in release builds)
- F5: Cycle through debug info screens
- F6: Cycle through profiler info screens
- F7: Cycle through camera modes
- F8: Toggle cinematic mode
- F9: Cycle through minimap modes
- Shift + F9: Change minimap orientation
- F10: Show/hide console
- F12: Take screenshot
- P: Write stack traces into debug.txt
- Settable in the configuration file, see the section below.
Most controls are settable in the configuration file, see the section below.
Paths
------
@ -74,7 +82,7 @@ Compiling on GNU/Linux:
-----------------------
Install dependencies. Here's an example for Debian/Ubuntu:
$ sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng12-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
$ sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
For Fedora users:
$ sudo dnf install make automake gcc gcc-c++ kernel-devel cmake libcurl* openal* libvorbis* libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel irrlicht-devel bzip2-libs gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel doxygen spatialindex-devel bzip2-devel
@ -82,10 +90,10 @@ $ sudo dnf install make automake gcc gcc-c++ kernel-devel cmake libcurl* openal*
You can install git for easily keeping your copy up to date.
If you dont want git, read below on how to get the source without git.
This is an example for installing git on Debian/Ubuntu:
$ sudo apt-get install git-core
$ sudo apt-get install git
For Fedora users:
$ sudo dnf install git-core
$ sudo dnf install git
Download source (this is the URL to the latest of source repository, which might not work at all times) using git:
$ git clone --depth 1 https://github.com/MultiCraft/MultiCraft.git
@ -130,7 +138,8 @@ ENABLE_CURSES - Build with (n)curses; Enables a server side terminal (comm
ENABLE_FREETYPE - Build with FreeType2; Allows using TTF fonts
ENABLE_GETTEXT - Build with Gettext; Allows using translations
ENABLE_GLES - Search for Open GLES headers & libraries and use them
ENABLE_LEVELDB - Build with LevelDB; Enables use of LevelDB map backend (faster than SQLite3)
ENABLE_LEVELDB - Build with LevelDB; Enables use of LevelDB map backend
ENABLE_POSTGRESQL - Build with libpq; Enables use of PostgreSQL map backend (PostgreSQL 9.5 or greater required)
ENABLE_REDIS - Build with libhiredis; Enables use of Redis map backend
ENABLE_SPATIAL - Build with LibSpatial; Speeds up AreaStores
ENABLE_SOUND - Build with OpenAL, libogg & libvorbis; in-game Sounds
@ -164,6 +173,8 @@ IRRLICHT_LIBRARY - Path to libIrrlicht.a/libIrrlicht.so/libIrrlic
LEVELDB_INCLUDE_DIR - Only when building with LevelDB; directory that contains db.h
LEVELDB_LIBRARY - Only when building with LevelDB; path to libleveldb.a/libleveldb.so/libleveldb.dll.a
LEVELDB_DLL - Only when building with LevelDB on Windows; path to libleveldb.dll
POSTGRESQL_INCLUDE_DIR - Only when building with PostgreSQL; directory that contains libpq-fe.h
POSTGRESQL_LIBRARY - Only when building with PostgreSQL; path to libpq.a/libpq.so
REDIS_INCLUDE_DIR - Only when building with Redis; directory that contains hiredis.h
REDIS_LIBRARY - Only when building with Redis; path to libhiredis.a/libhiredis.so
SPATIAL_INCLUDE_DIR - Only when building with LibSpatial; directory that contains spatialindex/SpatialIndex.h
@ -209,6 +220,8 @@ Compiling on Windows:
http://www.winimage.com/zLibDll/index.html
* Zlib library (zlibwapi.lib and zlibwapi.dll from zlib125dll.zip):
http://www.winimage.com/zLibDll/index.html
* SQLite3 headers and library
https://www.sqlite.org/download.html
* Optional: gettext library and tools:
http://gnuwin32.sourceforge.net/downlinks/gettext.php
- This is used for other UI languages. Feel free to leave it out.
@ -219,6 +232,10 @@ Compiling on Windows:
- Download all the other stuff to DIR and extract them into there.
("extract here", not "extract to packagename/")
NOTE: zlib125dll.zip needs to be extracted into zlib125dll
NOTE: You need to extract sqlite3.h & sqlite3ext.h from sqlite3 source
and sqlite3.dll & sqlite3.def from sqlite3 precompiled binaries
into "sqlite3" directory, and generate sqlite3.lib using command
"LIB /DEF:sqlite3.def /OUT:sqlite3.lib"
- All those packages contain a nice base directory in them, which
should end up being the direct subdirectories of DIR.
- You will end up with a directory structure like this (+=dir, -=file):
@ -226,7 +243,9 @@ Compiling on Windows:
+ DIR
- zlib-1.2.5.tar.gz
- zlib125dll.zip
- irrlicht-1.7.1.zip
- irrlicht-1.8.3.zip
- sqlite-amalgamation-3130000.zip (SQLite3 headers)
- sqlite-dll-win32-x86-3130000.zip (SQLite3 library for 32bit system)
- 110214175330.zip (or whatever, this is the MultiCraft source)
+ zlib-1.2.5
- zlib.h
@ -236,10 +255,15 @@ Compiling on Windows:
- readme.txt
+ dll32
...
+ irrlicht-1.7.1
+ irrlicht-1.8.3
+ lib
+ include
...
+ sqlite3
sqlite3.h
sqlite3ext.h
sqlite3.lib
sqlite3.dll
+ gettext (optional)
+bin
+include
@ -266,7 +290,7 @@ Compiling on Windows:
BUILD_SERVER [ ]
CMAKE_BUILD_TYPE Release
CMAKE_INSTALL_PREFIX DIR/minetest-install
IRRLICHT_SOURCE_DIR DIR/irrlicht-1.7.1
IRRLICHT_SOURCE_DIR DIR/irrlicht-1.8.3
RUN_IN_PLACE [X]
WARN_ALL [ ]
ZLIB_DLL DIR/zlib125dll/dll32/zlibwapi.dll
@ -277,6 +301,11 @@ Compiling on Windows:
GETTEXT_LIBRARIES DIR/gettext/lib/intl.lib
GETTEXT_MSGFMT DIR/gettext/bin/msgfmt
-----------------
- If CMake complains it couldn't find SQLITE3, choose "Advanced" box on the
right top corner, then specify the location of SQLITE3_INCLUDE_DIR and
SQLITE3_LIBRARY manually.
- If you want to build 64-bit minetest, you will need to build 64-bit version
of irrlicht engine manually, as only 32-bit pre-built library is provided.
- Hit "Configure"
- Hit "Configure" once again 8)
- If something is still coloured red, you have a problem.

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
Minetest Lua Mainmenu API Reference 0.4.14
Minetest Lua Mainmenu API Reference 0.4.15
========================================
Introduction
@ -210,6 +210,10 @@ string:trim()
^ eg. string.trim("\n \t\tfoo bar\t ") == "foo bar"
core.is_yes(arg) (possible in async calls)
^ returns whether arg can be interpreted as yes
minetest.encode_base64(string) (possible in async calls)
^ Encodes a string in base64.
minetest.decode_base64(string) (possible in async calls)
^ Decodes a string encoded in base64.
Version compat:
core.get_min_supp_proto()

View File

@ -1,35 +0,0 @@
Texture Overrides
=================
You can override the textures of a node from a texture pack using
texture overrides. To do this, create a file in a texture pack
called override.txt
Basic Format
------------
Each line in an override.txt file is a rule. It consists of
nodename face-selector texture
For example,
default:dirt_with_grass sides default_stone.png
You can use ^ operators as usual:
default:dirt_with_grass sides default_stone.png^[brighten
Face Selectors
--------------
| face-selector | behavior |
|---------------|---------------------------------------------------|
| left | x- |
| right | x+ |
| front | z- |
| back | z+ |
| top | y+ |
| bottom | y- |
| sides | x-, x+, z-, z+ |
| all | All faces. You can also use '*' instead of 'all'. |

158
doc/texture_packs.txt Normal file
View File

@ -0,0 +1,158 @@
Minetest Texture Pack Reference
===============================
Texture packs allow you to replace textures provided by a mod with your own
textures.
Texture pack directory structure
--------------------------------
textures
|-- Texture Pack
| |-- screenshot.png
| |-- description.txt
| |-- override.txt
| |-- your_texture_1.png
| |-- your_texture_2.png
`-- Another Texture Pack
### Texture Pack
This is a directory containing the entire contents of a single texture pack.
It can be chosen more or less freely and will also become the name of the
texture pack. The name must not be “base”.
### `description.txt`
A file containing a short description of the texture pack to be shown in the
texture packs tab.
### `screenshot.png`
A preview image showing an in-game screenshot of this texture pack; it will be
shown in the texture packs tab. It should have an aspect ratio of 3:2 and a
minimum size of 300×200 pixels.
### `your_texture_1.png`, `your_texture_2.png`, etc.
Any other PNG files will be interpreted as textures. They must have the same
names as the textures they are supposed to override. For example, to override
the apple texture of Minetest Game, add a PNG file named `default_apple.png`.
The custom textures do not necceessarily require the same size as their
originals, but this might be required for a few particular textures. When
unsure, just test your texture pack in-game.
Texture modifiers
-----------------
See lua_api.txt for texture modifiers
Special textures
----------------
These texture names are hardcoded into the engine but can also be overwritten
by texture packs. All existing fallback textures can be found in the directory
`textures/base/pack`.
### Gameplay textures
* `bubble.png`: the bubble texture when the player is drowning
* `crack_anylength.png`: node overlay texture when digging
* `crosshair.png`
* the crosshair texture in the center of the screen. The settings
`crosshair_color` and `crosshair_alpha` are used to create a cross
when no texture was found
* `halo.png`: used for the node highlighting mesh
* `heart.png`: used to display the health points of the player
* `minimap_mask_round.png`: round minimap mask, white gets replaced by the map
* `minimap_mask_square.png`: mask used for the square minimap
* `minimap_overlay_round.png`: overlay texture for the round minimap
* `minimap_overlay_square.png`: overlay texture for the square minimap
* `object_marker_red.png`: texture for players on the minimap
* `player_marker.png`: texture for the own player on the square minimap
* `player.png`: front texture of the 2D upright sprite player
* `player_back.png`: back texture of the 2D upright sprite player
* `moon.png`: texture of the moon. Default texture is generated by Minetest
* `moon_tonemap.png`: tonemap to be used when `moon.png` was found
* `sun.png`: texture of the sun. Default texture is generated by Minetest
* `sun_tonemap.png`: tonemap to be used when `sun.png` was found
* `sunrisebg.png`: shown sky texture when the sun rises
* `smoke_puff.png`: texture used when an object died by punching
* `unknown_item.png`: shown texture when an item definition was not found
* `unknown_node.png`: shown texture when a node definition was not found
* `unknown_object.png`: shown texture when an entity definition was not found
* `wieldhand.png`: texture of the wieldhand
### Mainmenu textures
* `menu_bg.png`: used as mainmenu background when the clouds are disabled
* `menu_header.png`: header texture when no texture pack is selected
* `no_screenshot.png`
* texture when no screenshot was found for a texture pack or mod
* `server_flags_creative.png`: icon for creative servers
* `server_flags_damage.png`: icon for enabled damage on servers
* `server_flags_favorite.png`: icon for your favorite servers
* `server_flags_pvp.png`: icon for enabled PvP on servers
### Android textures
* `down_arrow.png`
* `left_arrow.png`
* `right_arrow.png`
* `up_arrow.png`
* `drop_btn.png`
* `fast_btn.png`
* `fly_btn.png`
* `jump_btn.png`
* `noclip_btn.png`
* `camera_btn.png`
* `chat_btn.png`
* `inventory_btn.png`
* `rangeview_btn.png`
* `debug_btn.png`
* `gear_icon.png`
* `rare_controls.png`
Texture Overrides
-----------------
You can override the textures of a node from a texture pack using
texture overrides. To do this, create a file in a texture pack
called override.txt
Each line in an override.txt file is a rule. It consists of
nodename face-selector texture
For example,
default:dirt_with_grass sides default_stone.png
You can use ^ operators as usual:
default:dirt_with_grass sides default_stone.png^[brighten
Here are face selectors you can choose from:
| face-selector | behavior |
|---------------|---------------------------------------------------|
| left | x- |
| right | x+ |
| front | z- |
| back | z+ |
| top | y+ |
| bottom | y- |
| sides | x-, x+, z-, z+ |
| all | All faces. You can also use '*' instead of 'all'. |

View File

@ -32,6 +32,14 @@
<screenshot width="1920" height="1080">http://www.minetest.net/media/gallery/3.jpg</screenshot>
<screenshot width="1920" height="1080">http://www.minetest.net/media/gallery/5.jpg</screenshot>
</screenshots>
<url type="homepage">http://MultiCraft.mobi</url>
<keywords>
<keyword>sandbox</keyword>
<keyword>world</keyword>
<keyword>mining</keyword>
<keyword>multiplayer</keyword>
</keywords>
<url type="homepage">http://minetest.net</url>
<url type="bugtracker">https://github.com/MultiCraftProject/MultiCraft/issues</url>
<url type="translate">http://dev.minetest.net/Translation</url>
<updatecontact>MoNTE48@mal.ua</updatecontact>
</application>

View File

@ -12,6 +12,6 @@ Exec=MultiCraft
Icon=MultiCraft-icon
Terminal=false
Type=Application
Categories=Game;
Categories=Game;Simulation;
StartupNotify=false
Keywords=sandbox;world;mining;crafting;blocks;nodes;multiplayer;roleplaying;

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>
</assembly>

View File

@ -38,7 +38,7 @@
# type: bool
# noclip = false
# Smooths camera when moving and looking around.
# Smooths camera when looking around. Also called look or mouse smoothing.
# Useful for recording videos.
# type: bool
# cinematic = false
@ -83,6 +83,20 @@
# type: bool
# continuous_forward = false
# Enable Joysticks
# type: bool
# enable_joysticks = false
# The time in seconds it takes between repeated events
# when holding down a joystick button combination.
# type: float
# repeat_joystick_button_time = 0.17
# The sensitivity of the joystick axes for moving the
# ingame view frustum around.
# type: float
# joystick_frustum_sensitivity = 170
# Key for moving the player forward.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
# type: key
@ -159,10 +173,15 @@
# type: key
# keymap_noclip = KEY_KEY_H
# Key for toggling autorun.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
# type: key
# keymap_autorun =
# Key for toggling cinematic mode.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
# type: key
# keymap_cinematic = KEY_F8
# keymap_cinematic =
# Key for toggling display of minimap.
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
@ -194,7 +213,7 @@
# type: key
# keymap_toggle_force_fog_off = KEY_F3
# Key for toggling the camrea update. Only used for development
# Key for toggling the camera update. Only used for development
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
# type: key
# keymap_toggle_update_camera =
@ -247,7 +266,7 @@
# Servers starting with 0.4.13 will work, 0.4.12-dev servers may work.
# Disabling this option will protect your password better.
# type: bool
# send_pre_v25_init = true
# send_pre_v25_init = false
# Save the map received by the client on disk.
# type: bool
@ -355,7 +374,7 @@
#### Shaders
# Shaders allow advanced visul effects and may increase performance on some video cards.
# Shaders allow advanced visual effects and may increase performance on some video cards.
# Thy only work with the OpenGL video backend.
# type: bool
# enable_shaders = true
@ -454,8 +473,7 @@
# pause_fps_max = 20
# View distance in nodes.
# Min = 20
# type: int
# type: int min: 20 max: 4000
# viewing_range = 100
# Width component of the initial window size.
@ -482,6 +500,11 @@
# type: int min: 30 max: 160
# fov = 72
# Field of view while zooming in degrees.
# This requires the "zoom" privilege on the server.
# type: int min: 15 max: 160
# zoom_fov = 15
# Adjust the gamma encoding for the light tables. Lower numbers are brighter.
# This setting is for the client only and is ignored by the server.
# type: float min: 1 max: 3
@ -590,6 +613,10 @@
# type: bool
# inventory_items_animations = false
# Fraction of the visible distance at which fog starts to be rendered
# type: float min: 0 max: 0.99
# fog_start = 0.4
### Menus
# Use a cloud animation for the main menu background.
@ -613,7 +640,7 @@
# When gui_scaling_filter_txr2img is true, copy those images
# from hardware to software for scaling. When false, fall back
# to the old scaling method, for video drivers that don't
# propery support downloading textures back from hardware.
# properly support downloading textures back from hardware.
# type: bool
# gui_scaling_filter_txr2img = true
@ -630,7 +657,7 @@
# font_path = fonts/liberationsans.ttf
# type: int
# font_size = 15
# font_size = 16
# Font shadow offset, if 0 then shadow will not be drawn.
# type: int
@ -638,7 +665,7 @@
# Font shadow alpha (opaqueness, between 0 and 255).
# type: int min: 0 max: 255
# font_shadow_alpha = 128
# font_shadow_alpha = 127
# type: path
# mono_font_path = fonts/liberationmono.ttf
@ -731,6 +758,12 @@
# type: string
# serverlist_url = servers.minetest.net
# Disable escape sequences, e.g. chat coloring.
# Use this if you want to run a server with pre-0.4.14 clients and you want to disable
# the escape sequences generated by mods.
# type: bool
# disable_escape_sequences = false
## Network
# Network port to listen (UDP).
@ -763,11 +796,11 @@
### Advanced
# How many blocks are flying in the wire simultaneously per client.
# Maximum number of blocks that are simultaneously sent per client.
# type: int
# max_simultaneous_block_sends_per_client = 10
# How many blocks are flying in the wire simultaneously for the whole server.
# Maximum number of blocks that are simultaneously sent in total.
# type: int
# max_simultaneous_block_sends_server_total = 40
@ -952,18 +985,6 @@
# type: enum values: legacy, log, error
# deprecated_lua_api_handling = legacy
# Useful for mod developers.
# type: bool
# mod_profiling = false
# Detailed mod profile data. Useful for mod developers.
# type: bool
# detailed_profiling = false
# Profiler data print interval. 0 = disable. Useful for developers.
# type: int
# profiler_print_interval = 0
# Number of extra blocks that can be loaded by /clearobjects at once.
# This is a trade-off between sqlite transaction overhead and
# memory consumption (4096=100MB, as a rule of thumb).
@ -977,7 +998,7 @@
# Maximum number of statically stored objects in a block.
# type: int
# max_objects_per_block = 49
# max_objects_per_block = 64
# See http://www.sqlite.org/pragma.html#pragma_synchronous
# type: enum values: 0, 1, 2
@ -1018,12 +1039,20 @@
# type: float
# liquid_update = 1.0
# At this distance the server will aggressively optimize which blocks are sent to clients.
# Small values potentially improve performance a lot, at the expense of visible rendering glitches.
# (some blocks will not be rendered under water and in caves, as well as sometimes on land)
# Setting this to a value greater than max_block_send_distance disables this optimization.
# Stated in mapblocks (16 nodes)
# type: int min: 2
# block_send_optimize_distance = 4
## Mapgen
# Name of map generator to be used when creating a new world.
# Creating a world in the main menu will override this.
# type: enum values: v5, v6, v7, flat, valleys, fractal, singlenode
# mg_name = v6
# mg_name = v7
# Water surface level of the world.
# type: int
@ -1045,8 +1074,6 @@
# Global map generation attributes.
# In Mapgen v6 the 'decorations' flag controls all decorations except trees
# and junglegrass, in all other mapgens this flag controls all decorations.
# The default flags set in the engine are: caves, light, decorations
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
# type: flags possible values: caves, dungeons, light, decorations, nocaves, nodungeons, nolight, nodecorations
@ -1082,6 +1109,25 @@
# type: int
# num_emerge_threads = 1
#### Noise parameters and formats
# Noise parameters can be specified as a set of positional values, for example:
# Offset, scale, (spread factors), seed offset, number of octaves, persistence, lacunarity
# mgv6_np_terrain_base = -4, 20, (250, 250, 250), 82341, 5, 0.6, 2.0
# Or the group format can be used instead, for example:
# mgv6_np_terrain_base = {
# offset = -4,
# scale = 20,
# spread = (250, 250, 250),
# seed = 82341,
# octaves = 5,
# persistence = 0.6,
# lacunarity = 2.0,
# flags = "defaults"
# }
# Only the group format supports noise flags which are needed for eased noise.
# Mgv5 uses eased noise for np_ground so this is shown in group format below.
# Noise parameters for biome API temperature, humidity and biome blend.
# type: noise_params
# mg_biome_np_heat = 50, 50, (750, 750, 750), 5349, 3, 0.5, 2.0
@ -1116,12 +1162,24 @@
# type: noise_params
# mgv5_np_cave2 = 0, 12, (50, 50, 50), 10325, 4, 0.5, 2.0
# Noise parameters in group format, unsupported by advanced settings
# menu but settable in minetest.conf.
# See documentation of noise parameter formats above.
# mgv5_np_ground = {
# offset = 0,
# scale = 40,
# spread = (80, 80, 80),
# seed = 983240,
# octaves = 4,
# persistence = 0.55,
# lacunarity = 2.0,
# flags = "eased"
# }
#### Mapgen v6
# Map generation attributes specific to Mapgen v6.
# When snowbiomes are enabled jungles are automatically enabled, the 'jungles' flag is ignored.
# The default flags set in the engine are: biomeblend, mudflow
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
# type: flags possible values: jungles, biomeblend, mudflow, snowbiomes, flat, trees, nojungles, nobiomeblend, nomudflow, nosnowbiomes, noflat, notrees
@ -1171,17 +1229,33 @@
#### Mapgen v7
# Map generation attributes specific to Mapgen v7.
# The 'ridges' flag controls the rivers.
# The default flags set in the engine are: mountains, ridges
# The flags string modifies the engine defaults.
# The 'ridges' flag enables the rivers.
# Floatlands are currently experimental and subject to change.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
# type: flags possible values: mountains, ridges, nomountains, noridges
# type: flags possible values: mountains, ridges, floatlands, nomountains, noridges, nofloatlands
# mgv7_spflags = mountains,ridges
# Controls width of tunnels, a smaller value creates wider tunnels.
# type: float
# mgv7_cave_width = 0.3
# mgv7_cave_width = 0.09
# Controls the density of floatland mountain terrain.
# Is an offset added to the 'np_mountain' noise value.
# type: float
# mgv7_float_mount_density = 0.6
# Typical maximum height, above and below midpoint, of floatland mountain terrain.
# type: float
# mgv7_float_mount_height = 128.0
# Y-level of floatland midpoint and lake surface.
# type: int
# mgv7_floatland_level = 1280
# Y-level to which floatland shadows extend.
# type: int
# mgv7_shadow_limit = 1024
# type: noise_params
# mgv7_np_terrain_base = 4, 70, (600, 600, 600), 82341, 5, 0.6, 2.0
@ -1204,6 +1278,12 @@
# type: noise_params
# mgv7_np_ridge_uwater = 0, 1, (1000, 1000, 1000), 85039, 5, 0.6, 2.0
# type: noise_params
# mgv7_np_floatland_base = -0.6, 1.5, (600, 600, 600), 114, 5, 0.6, 2.0
# type: noise_params
# mgv7_np_float_base_height = 48, 24, (300, 300, 300), 907, 4, 0.7, 2.0
# type: noise_params
# mgv7_np_mountain = -0.6, 1, (250, 350, 250), 5333, 5, 0.63, 2.0
@ -1211,17 +1291,15 @@
# mgv7_np_ridge = 0, 1, (100, 100, 100), 6467, 4, 0.75, 2.0
# type: noise_params
# mgv7_np_cave1 = 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
# mgv7_np_cave1 = 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
# type: noise_params
# mgv7_np_cave2 = 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
# mgv7_np_cave2 = 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
#### Mapgen flat
# Map generation attributes specific to Mapgen flat.
# Occasional lakes and hills can be added to the flat world.
# The default flags set in the engine are: none
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
# type: flags possible values: lakes, hills, , nolakes, nohills
@ -1237,7 +1315,7 @@
# Controls width of tunnels, a smaller value creates wider tunnels.
# type: float
# mgflat_cave_width = 0.3
# mgflat_cave_width = 0.09
# Terrain noise threshold for lakes.
# Controls proportion of world area covered by lakes.
@ -1269,16 +1347,16 @@
# mgflat_np_filler_depth = 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
# type: noise_params
# mgflat_np_cave1 = 0, 12, (128, 128, 128), 52534, 4, 0.5, 2.0
# mgflat_np_cave1 = 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
# type: noise_params
# mgflat_np_cave2 = 0, 12, (128, 128, 128), 10325, 4, 0.5, 2.0
# mgflat_np_cave2 = 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
#### Mapgen fractal
# Controls width of tunnels, a smaller value creates wider tunnels.
# type: float
# mgfractal_cave_width = 0.3
# mgfractal_cave_width = 0.09
# Choice of 18 fractals from 9 formulas.
# 1 = 4D "Roundy" mandelbrot set.
@ -1353,10 +1431,10 @@
# mgfractal_np_filler_depth = 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
# type: noise_params
# mgfractal_np_cave1 = 0, 12, (128, 128, 128), 52534, 4, 0.5, 2.0
# mgfractal_np_cave1 = 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
# type: noise_params
# mgfractal_np_cave2 = 0, 12, (128, 128, 128), 10325, 4, 0.5, 2.0
# mgfractal_np_cave2 = 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
#### Mapgen Valleys
@ -1366,8 +1444,6 @@
# 'altitude_chill' makes higher elevations colder, which may cause biome issues.
# 'humid_rivers' modifies the humidity around rivers and in areas where water would tend to pool,
# it may interfere with delicately adjusted biomes.
# The default flags set in the engine are: altitude_chill, humid_rivers
# The flags string modifies the engine defaults.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with 'no' are used to explicitly disable them.
# type: flags possible values: altitude_chill, noaltitude_chill, humid_rivers, nohumid_rivers
@ -1405,17 +1481,17 @@
# Controls width of tunnels, a smaller value creates wider tunnels.
# type: float
# mgvalleys_cave_width = 0.3
# mgvalleys_cave_width = 0.09
##### Noises
# Caves and tunnels form at the intersection of the two noises
# type: noise_params
# mgvalleys_np_cave1 = 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
# mgvalleys_np_cave1 = 0, 12, (61, 61, 61), 52534, 3, 0.5, 2.0
# Caves and tunnels form at the intersection of the two noises
# type: noise_params
# mgvalleys_np_cave2 = 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
# mgvalleys_np_cave2 = 0, 12, (67, 67, 67), 10325, 3, 0.5, 2.0
# The depth of dirt or other filler
# type: noise_params
@ -1460,11 +1536,68 @@
# type: string
# secure.trusted_mods =
# Comma-seperated list of mods that are allowed to access HTTP APIs, which
# Comma-separated list of mods that are allowed to access HTTP APIs, which
# allow them to upload and download data to/from the internet.
# type: string
# secure.http_mods =
## Advanced
### Profiling
# Load the game profiler to collect game profiling data.
# Provides a /profiler command to access the compiled profile.
# Useful for mod developers and server operators.
# type: bool
# profiler.load = false
# The default format in which profiles are being saved,
# when calling `/profiler save [format]` without format.
# type: enum values: txt, csv, lua, json, json_pretty
# profiler.default_report_format = txt
# The file path relative to your worldpath in which profiles will be saved to.
#
# type: string
# profiler.report_path = ""
#### Instrumentation
# Instrument the methods of entities on registration.
# type: bool
# instrument.entity = true
# Instrument the action function of Active Block Modifiers on registration.
# type: bool
# instrument.abm = true
# Instrument the action function of Loading Block Modifiers on registration.
# type: bool
# instrument.lbm = true
# Instrument chatcommands on registration.
# type: bool
# instrument.chatcommand = true
# Instrument global callback functions on registration.
# (anything you pass to a minetest.register_*() function)
# type: bool
# instrument.global_callback = true
##### Advanced
# Instrument builtin.
# This is usually only needed by core/builtin contributors
# type: bool
# instrument.builtin = false
# Have the profiler instrument itself:
# * Instrument an empty function.
# This estimates the overhead, that instrumentation is adding (+1 function call).
# * Instrument the sampler being used to update the statistics.
# type: bool
# instrument.profiler = false
#
# Client and Server
#
@ -1477,7 +1610,7 @@
# Set the language. Leave empty to use the system language.
# A restart is required after changing this.
# type: enum values: , be, cs, da, de, eo, es, et, fr, hu, id, it, ja, jbo, ko, ky, lt, nb, nl, pl, pt, pt_BR, ro, ru, tr, uk, zh_CN, zh_TW
# type: enum values: , be, ca, cs, da, de, en, eo, es, et, fr, he, hu, id, it, ja, jbo, ko, ky, lt, nb, nl, pl, pt, pt_BR, ro, ru, sr_Cyrl, tr, uk, zh_CN, zh_TW
# language =
# Level of logging to be written to debug.txt:
@ -1537,3 +1670,7 @@
# type: string
# modstore_details_url = https://forum.minetest.net/mmdb/mod/*/
# Print the engine's profiling data in regular intervals (in seconds). 0 = disable. Useful for developers.
# type: int
# profiler_print_interval = 0

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: MultiCraft\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -903,6 +903,10 @@ msgstr ""
msgid "Print stacks"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/guiPasswordChange.cpp
msgid "Old Password"
msgstr ""
@ -1215,10 +1219,6 @@ msgstr ""
msgid "PA1"
msgstr ""
#: src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr ""
@ -1275,7 +1275,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -1365,6 +1365,30 @@ msgstr ""
msgid "Continuous forward movement (only used for testing)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Forward key"
msgstr ""
@ -1532,6 +1556,17 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Cinematic mode key"
msgstr ""
@ -1615,7 +1650,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -1918,7 +1953,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -2149,6 +2184,16 @@ msgstr ""
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2405,7 +2450,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -2603,6 +2648,18 @@ msgid ""
"minetest.net."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Server port"
msgstr ""
@ -2658,20 +2715,23 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
@ -3005,30 +3065,6 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Max. clearobjects extra blocks"
msgstr ""
@ -3051,7 +3087,7 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
@ -3192,8 +3228,6 @@ msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3323,8 +3357,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3400,8 +3432,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3467,8 +3497,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3714,8 +3742,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3889,10 +3915,116 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Report path"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Chatcommands"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -4008,3 +4140,13 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2013-11-23 17:37+0100\n"
"Last-Translator: Selat <LongExampleTestName@gmail.com>\n"
"Language-Team: Belarusian\n"
@ -68,7 +68,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr ""
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -137,6 +138,14 @@ msgstr ""
msgid "Download one from minetest.net"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr ""
@ -161,8 +170,9 @@ msgstr ""
msgid "Are you sure you want to delete \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr ""
@ -178,14 +188,6 @@ msgstr ""
msgid "Delete World \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr ""
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr ""
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr ""
@ -346,22 +348,14 @@ msgstr ""
msgid "Active Contributors"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Minetest Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "MultiCraft Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr ""
@ -402,35 +396,35 @@ msgstr ""
msgid "Address / Port"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Creative mode"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Damage enabled"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Del. Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Name / Password"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "PvP enabled"
msgstr ""
@ -438,16 +432,18 @@ msgstr ""
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Create Server"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Creative Inventory"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr ""
#: builtin/mainmenu/tab_server.lua
@ -470,10 +466,14 @@ msgstr ""
msgid "Public"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr ""
@ -482,10 +482,6 @@ msgstr ""
msgid "Start Game"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Survival Mode"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -542,6 +538,10 @@ msgstr ""
msgid "Mipmap + Aniso. Filter"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No Filter"
msgstr ""
@ -634,8 +634,20 @@ msgstr ""
msgid "Waving Water"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Config mods"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Main"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Start Singleplayer"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
@ -643,7 +655,7 @@ msgid "Play"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Single Player"
msgid "Singleplayer"
msgstr ""
#: builtin/mainmenu/tab_texturepacks.lua
@ -728,10 +740,6 @@ msgstr ""
msgid "Change Password"
msgstr ""
#: src/game.cpp
msgid "Close game"
msgstr ""
#: src/game.cpp
msgid "Connecting to server..."
msgstr ""
@ -748,6 +756,45 @@ msgstr ""
msgid "Creating server..."
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr ""
#: src/game.cpp
msgid "Exit to OS"
msgstr ""
#: src/game.cpp
msgid "Item definitions..."
msgstr ""
@ -764,10 +811,6 @@ msgstr ""
msgid "MiB/s"
msgstr ""
#: src/game.cpp
msgid "Migrating world..."
msgstr ""
#: src/game.cpp
msgid "Node definitions..."
msgstr ""
@ -780,10 +823,6 @@ msgstr ""
msgid "Respawn"
msgstr ""
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
msgid "Shutting down..."
msgstr ""
@ -853,8 +892,7 @@ msgid "Key already in use"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
@ -897,6 +935,10 @@ msgstr ""
msgid "Use"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr ""
@ -1213,10 +1255,6 @@ msgstr ""
msgid "X Button 2"
msgstr ""
#: src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1282,6 +1320,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1356,6 +1398,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Backward key"
msgstr ""
@ -1388,6 +1434,10 @@ msgstr ""
msgid "Build inside player"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Bumpmapping"
msgstr ""
@ -1428,6 +1478,10 @@ msgstr ""
msgid "Chat toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Chatcommands"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1467,10 +1521,6 @@ msgstr ""
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1505,14 +1555,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1658,6 +1708,10 @@ msgstr ""
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1674,6 +1728,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1704,14 +1762,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1723,6 +1773,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1747,6 +1809,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable VBO"
msgstr ""
@ -1829,6 +1895,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1889,10 +1963,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2015,10 +2099,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2031,13 +2111,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2067,6 +2149,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2094,15 +2185,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2197,6 +2279,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2231,6 +2347,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2389,6 +2513,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2426,7 +2557,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2576,6 +2707,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2609,8 +2755,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2620,8 +2764,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2632,8 +2774,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2643,8 +2783,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2666,10 +2804,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen Valleys"
msgstr ""
@ -3006,6 +3140,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3047,6 +3189,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3054,11 +3200,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3069,10 +3215,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Menus"
msgstr ""
@ -3113,10 +3255,6 @@ msgstr ""
msgid "Mipmapping"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3321,12 +3459,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3334,7 +3478,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3368,6 +3512,10 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Report path"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Right key"
msgstr ""
@ -3526,7 +3674,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3563,7 +3711,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3641,10 +3789,22 @@ msgstr ""
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3659,6 +3819,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3674,6 +3840,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3777,10 +3949,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -3907,7 +4075,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2016-04-09 13:53+0000\n"
"Last-Translator: Jan Harald <kuus29@gmail.com>\n"
"Language-Team: Estonian <https://hosted.weblate.org/projects/minetest/"
@ -74,7 +74,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr "Meie toetame protokolli versioone $1 kuni $2."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -145,6 +146,14 @@ msgstr "Laadi alla alammäng, näiteks minetest_game, aadressilt minetest.net"
msgid "Download one from minetest.net"
msgstr "Laadi minetest.net-st üks mäng alla"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr "Mäng"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Kaardi generaator"
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr "No nimi või no mäng valitud"
@ -169,8 +178,9 @@ msgstr "Sa ei ole alammänge paigaldanud."
msgid "Are you sure you want to delete \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr "Kustuta"
@ -186,14 +196,6 @@ msgstr ""
msgid "Delete World \"$1\"?"
msgstr "Kas kustutada maailm \"$1\"?"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Ei"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Jah"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr "Nõustu"
@ -357,24 +359,14 @@ msgstr ""
msgid "Active Contributors"
msgstr "Co-arendaja"
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr "Põhiline arendaja"
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr "Tänuavaldused"
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Minetest Developers"
msgstr "Põhiline arendaja"
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "MultiCraft Developers"
msgstr "Põhiline arendaja"
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr "Early arendajad"
@ -416,38 +408,38 @@ msgstr ""
msgid "Address / Port"
msgstr "Aadress / Port:"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr "Liitu"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Creative mode"
msgstr "Loov režiim"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Damage enabled"
msgstr "Kahjustamine lubatud"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Del. Favorite"
msgstr "Lemmikud:"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Favorite"
msgstr "Lemmikud:"
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Name / Password"
msgstr "Nimi / Parool:"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "PvP enabled"
msgstr "Sisse lülitatud"
@ -456,19 +448,19 @@ msgstr "Sisse lülitatud"
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr "Konfigureeri"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr "Loo maailm"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Kujunduslik mängumood"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "Seljakott"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr "Lülita valu sisse"
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -491,10 +483,14 @@ msgstr ""
msgid "Public"
msgstr "Avalik"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr "Vali maailm:"
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr ""
@ -503,11 +499,6 @@ msgstr ""
msgid "Start Game"
msgstr "Alusta mängu"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Survival Mode"
msgstr "Kujunduslik mängumood"
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -572,6 +563,10 @@ msgstr "Väga hea kvaliteet"
msgid "Mipmap + Aniso. Filter"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Ei"
#: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "No Filter"
@ -680,17 +675,31 @@ msgstr "Uhked puud"
msgid "Waving Water"
msgstr "Uhked puud"
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Kujunduslik mängumood"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Jah"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Config mods"
msgstr "Konfigureeri"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Main"
msgstr "Menüü"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Start Singleplayer"
msgstr "Üksikmäng"
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play"
msgstr "Mängi"
#: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Single Player"
msgid "Singleplayer"
msgstr "Üksikmäng"
#: builtin/mainmenu/tab_texturepacks.lua
@ -780,11 +789,6 @@ msgstr "Vaheta nuppe"
msgid "Change Password"
msgstr "Vaheta parooli"
#: src/game.cpp
#, fuzzy
msgid "Close game"
msgstr "uus mängu"
#: src/game.cpp
msgid "Connecting to server..."
msgstr ""
@ -801,6 +805,45 @@ msgstr ""
msgid "Creating server..."
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr "Välju menüüsse"
#: src/game.cpp
msgid "Exit to OS"
msgstr "Välju mängust"
#: src/game.cpp
msgid "Item definitions..."
msgstr ""
@ -817,11 +860,6 @@ msgstr ""
msgid "MiB/s"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Migrating world..."
msgstr "Loo maailm"
#: src/game.cpp
msgid "Node definitions..."
msgstr ""
@ -834,10 +872,6 @@ msgstr ""
msgid "Respawn"
msgstr "Ärka ellu"
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
msgid "Shutting down..."
msgstr ""
@ -907,9 +941,7 @@ msgid "Key already in use"
msgstr "Nupp juba kasutuses"
#: src/guiKeyChangeMenu.cpp
#, fuzzy
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
"Nupusätted. (Kui see menüü sassi läheb, siis kustuta asju failist minetest."
"conf)"
@ -955,6 +987,10 @@ msgstr "Lülita läbi seinte minek sisse"
msgid "Use"
msgstr "Tegevus"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr "Suumi"
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "Vajuta nuppu"
@ -1271,10 +1307,6 @@ msgstr "X Nuppp 1"
msgid "X Button 2"
msgstr "X Nupp 2"
#: src/keycode.cpp
msgid "Zoom"
msgstr "Suumi"
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1341,6 +1373,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1416,6 +1452,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1451,6 +1491,10 @@ msgstr ""
msgid "Build inside player"
msgstr "Mitmikmäng"
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Bumpmapping"
@ -1494,6 +1538,11 @@ msgstr "Vaheta nuppe"
msgid "Chat toggle key"
msgstr "Vaheta nuppe"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "Käsklus"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1535,10 +1584,6 @@ msgstr "Kujunduslik mängumood"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1575,14 +1620,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1737,6 +1782,10 @@ msgstr "Uus parool"
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1753,6 +1802,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1783,14 +1836,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1803,6 +1848,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "Lülita osakesed sisse"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1829,6 +1886,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1914,6 +1975,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1974,10 +2043,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2102,10 +2181,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr "Mäng"
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2118,13 +2193,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2154,6 +2231,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2181,15 +2267,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2285,6 +2362,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2320,6 +2431,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2479,6 +2598,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2516,7 +2642,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2667,6 +2793,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2702,8 +2843,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2713,8 +2852,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2725,8 +2862,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2736,8 +2871,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2759,10 +2892,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Kaardi generaator"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen Valleys"
@ -3121,6 +3250,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3162,6 +3299,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3169,11 +3310,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3184,10 +3325,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Menus"
@ -3230,10 +3367,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "Väga hea kvaliteet"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3438,12 +3571,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3451,7 +3590,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3486,6 +3625,11 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Report path"
msgstr "Vali"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key"
@ -3651,7 +3795,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3689,7 +3833,7 @@ msgstr "Ilus valgustus"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3769,10 +3913,22 @@ msgstr "Vali graafika:"
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3787,6 +3943,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3802,6 +3964,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3907,11 +4075,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Useful for mod developers."
msgstr "Põhiline arendaja"
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -4040,7 +4203,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -4140,6 +4303,10 @@ msgstr ""
msgid "cURL timeout"
msgstr ""
#, fuzzy
#~ msgid "Useful for mod developers."
#~ msgstr "Põhiline arendaja"
#~ msgid "Public Serverlist"
#~ msgstr "Avalikud serverid"
@ -4158,6 +4325,9 @@ msgstr ""
#~ msgid "GAMES"
#~ msgstr "MÄNGUD"
#~ msgid "new game"
#~ msgstr "uus mängu"
#~ msgid "EDIT GAME"
#~ msgstr "MUUDA MÄNGU"
@ -4242,6 +4412,9 @@ msgstr ""
#~ msgid "Address required."
#~ msgstr "IP on vajalkik."
#~ msgid "Create world"
#~ msgstr "Loo maailm"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Jäta IP lahter tühjaks et alustada LAN serverit."
@ -4271,24 +4444,3 @@ msgstr ""
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Alla"
#~ msgid "Exit to OS"
#~ msgstr "Välju mängust"
#~ msgid "Exit to Menu"
#~ msgstr "Välju menüüsse"
#, fuzzy
#~ msgid "Start Singleplayer"
#~ msgstr "Üksikmäng"
#, fuzzy
#~ msgid "Main"
#~ msgstr "Menüü"
#, fuzzy
#~ msgid "Config mods"
#~ msgstr "Konfigureeri"
#~ msgid "Enable Damage"
#~ msgstr "Lülita valu sisse"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2016-05-08 17:39+0000\n"
"Last-Translator: senpi <saikos@openmailbox.org>\n"
"Language-Team: Lojban <https://hosted.weblate.org/projects/minetest/minetest/"
@ -74,7 +74,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr ""
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -144,6 +145,14 @@ msgstr ""
msgid "Download one from minetest.net"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr ""
@ -168,8 +177,9 @@ msgstr ""
msgid "Are you sure you want to delete \"$1\"?"
msgstr ".i xu do je'u djica lo nu vimcu la'o gy.$1.gy."
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr "vimcu"
@ -185,14 +195,6 @@ msgstr ""
msgid "Delete World \"$1\"?"
msgstr ".i xu do djica lo nu vimcu lo munje be me'e zoi gy.$1.gy."
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "na go'i"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "go'i"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr "fitytu'i"
@ -356,22 +358,14 @@ msgstr ""
msgid "Active Contributors"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr "lo finti liste"
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Minetest Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "MultiCraft Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr ""
@ -413,36 +407,36 @@ msgstr ""
msgid "Address / Port"
msgstr "lo samjudri jo'u judrnporte"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr "lo samtciselse'u"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr "samjongau"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Creative mode"
msgstr "le nu finti kelci"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Damage enabled"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Del. Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Name / Password"
msgstr "lo cmene .e lo lerpoijaspu"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "PvP enabled"
msgstr ""
@ -450,19 +444,19 @@ msgstr ""
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr ".i lo samtcise'u cu se zbasu"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "le nu finti kelci"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "lo dacti uidje"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -484,11 +478,15 @@ msgstr "lo judrnporte"
msgid "Public"
msgstr "gubni"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Select World:"
msgstr "cuxna lo munje"
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr "lo samtcise'u"
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr "lo samtcise'u judrnporte"
@ -497,11 +495,6 @@ msgstr "lo samtcise'u judrnporte"
msgid "Start Game"
msgstr "cfari fa lo nu kelci"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Survival Mode"
msgstr "le nu finti kelci"
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -564,6 +557,10 @@ msgstr "lo puvrmipmepi"
msgid "Mipmap + Aniso. Filter"
msgstr "lo puvrmipmepi .e lo puvytolmanfyju'e"
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "na go'i"
#: builtin/mainmenu/tab_settings.lua
msgid "No Filter"
msgstr ""
@ -667,17 +664,28 @@ msgstr "lo melbi pezli"
msgid "Waving Water"
msgstr "lo melbi pezli"
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "le nu finti kelci"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "go'i"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Config mods"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Main"
msgstr "lo ralju"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Start Singleplayer"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Single Player"
msgid "Singleplayer"
msgstr "pa kelci"
#: builtin/mainmenu/tab_texturepacks.lua
@ -762,10 +770,6 @@ msgstr ""
msgid "Change Password"
msgstr "gafygau lo lerpoijaspu"
#: src/game.cpp
msgid "Close game"
msgstr ""
#: src/game.cpp
msgid "Connecting to server..."
msgstr ".i ca'o troci lo za'i samjo'e lo samse'u"
@ -782,6 +786,45 @@ msgstr ".i lo samtciselse'u cu se zbasu"
msgid "Creating server..."
msgstr ".i lo samtcise'u cu se zbasu"
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr ""
#: src/game.cpp
msgid "Exit to OS"
msgstr "tolcfagau"
#: src/game.cpp
#, fuzzy
msgid "Item definitions..."
@ -799,11 +842,6 @@ msgstr ""
msgid "MiB/s"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Migrating world..."
msgstr ".i lo samtciselse'u cu se zbasu"
#: src/game.cpp
#, fuzzy
msgid "Node definitions..."
@ -817,10 +855,6 @@ msgstr ".i ca'o troci lo nu facki lo samjudri"
msgid "Respawn"
msgstr "gasnu lo nu mi tolcanci"
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
msgid "Shutting down..."
msgstr ""
@ -891,8 +925,7 @@ msgid "Key already in use"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
@ -935,6 +968,10 @@ msgstr ""
msgid "Use"
msgstr "mu'e pilno"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "ko da'ergau le batke"
@ -1251,10 +1288,6 @@ msgstr "la'o gy.X Button 1.gy."
msgid "X Button 2"
msgstr "la'o gy.X Button 2.gy."
#: src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1321,6 +1354,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1395,6 +1432,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1430,6 +1471,10 @@ msgstr ""
msgid "Build inside player"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Bumpmapping"
msgstr ""
@ -1471,6 +1516,11 @@ msgstr "samta'a"
msgid "Chat toggle key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "minde"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1512,10 +1562,6 @@ msgstr "le nu finti kelci"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr "lo samtciselse'u"
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1552,14 +1598,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1709,6 +1755,10 @@ msgstr "lo cnino lerpoijaspu"
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1725,6 +1775,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1755,14 +1809,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1775,6 +1821,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "lo kantu"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1799,6 +1857,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1882,6 +1944,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1943,10 +2013,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2070,10 +2150,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2086,13 +2162,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2122,6 +2200,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2149,15 +2236,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2252,6 +2330,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2287,6 +2399,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2446,6 +2566,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2483,7 +2610,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2634,6 +2761,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2669,8 +2811,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2680,8 +2820,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2692,8 +2830,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2703,8 +2839,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2726,10 +2860,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen Valleys"
msgstr ""
@ -3066,6 +3196,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3107,6 +3245,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3114,11 +3256,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3129,10 +3271,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Menus"
msgstr ""
@ -3174,10 +3312,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "lo puvrmipmepi"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3382,12 +3516,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3395,7 +3535,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3430,6 +3570,10 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Report path"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key"
@ -3596,7 +3740,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3634,7 +3778,7 @@ msgstr "lo xutla se gusni"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3713,10 +3857,22 @@ msgstr ""
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3731,6 +3887,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3746,6 +3908,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3851,10 +4019,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -3985,7 +4149,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -4098,12 +4262,3 @@ msgstr ""
#, fuzzy
#~ msgid "Preload inventory textures"
#~ msgstr ".i ca'o samymo'i le tengu datnyvei"
#~ msgid "Exit to OS"
#~ msgstr "tolcfagau"
#~ msgid "Main"
#~ msgstr "lo ralju"
#~ msgid "Server"
#~ msgstr "lo samtcise'u"

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2013-06-01 18:09+0200\n"
"Last-Translator: Chynggyz Jumaliev <translatorky@lavabit.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -73,7 +73,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr ""
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -148,6 +149,14 @@ msgstr ""
msgid "Download one from minetest.net"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr "Оюн"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr ""
@ -172,8 +181,9 @@ msgstr ""
msgid "Are you sure you want to delete \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr "Өчүрүү"
@ -190,14 +200,6 @@ msgstr ""
msgid "Delete World \"$1\"?"
msgstr "Дүйнөнү өчүрүү"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Жок"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Ооба"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr "Кабыл алуу"
@ -364,22 +366,14 @@ msgstr ""
msgid "Active Contributors"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr "Алкыштар"
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Minetest Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "MultiCraft Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr ""
@ -422,40 +416,40 @@ msgstr ""
msgid "Address / Port"
msgstr "Дареги/порту"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr "Туташуу"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Creative mode"
msgstr "Жаратуу режими"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Damage enabled"
msgstr "күйгүзүлгөн"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Del. Favorite"
msgstr "Тандалмалар:"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Favorite"
msgstr "Тандалмалар:"
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Name / Password"
msgstr "Аты/сырсөзү"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "PvP enabled"
msgstr "күйгүзүлгөн"
@ -464,19 +458,19 @@ msgstr "күйгүзүлгөн"
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr "Ырастоо"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr "Сервер жаратылууда...."
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Жаратуу режими"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "Мүлк-шайман"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr "Убалды күйгүзүү"
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -498,10 +492,14 @@ msgstr ""
msgid "Public"
msgstr "Жалпылык"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr "Дүйнөнү тандаңыз:"
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr ""
@ -511,11 +509,6 @@ msgstr ""
msgid "Start Game"
msgstr "Оюнду баштоо/туташуу"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Survival Mode"
msgstr "Жаратуу режими"
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -580,6 +573,10 @@ msgstr "Mip-текстуралоо"
msgid "Mipmap + Aniso. Filter"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Жок"
#: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "No Filter"
@ -688,17 +685,31 @@ msgstr "Кооз бактар"
msgid "Waving Water"
msgstr "Кооз бактар"
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Жаратуу режими"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Ооба"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Config mods"
msgstr "Ырастоо"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Main"
msgstr "Башкы меню"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Start Singleplayer"
msgstr "Бир кишилик"
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play"
msgstr "Ойноо"
#: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Single Player"
msgid "Singleplayer"
msgstr "Бир кишилик"
#: builtin/mainmenu/tab_texturepacks.lua
@ -789,10 +800,6 @@ msgstr "Баскычтарды өзгөртүү"
msgid "Change Password"
msgstr "Сырсөздү өзгөртүү"
#: src/game.cpp
msgid "Close game"
msgstr ""
#: src/game.cpp
msgid "Connecting to server..."
msgstr "Серверге туташтырылууда..."
@ -810,6 +817,56 @@ msgstr "Клиент жаратылууда..."
msgid "Creating server..."
msgstr "Сервер жаратылууда...."
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
"Жарыяланбас башкаруу:\n"
"- WASD: басуу\n"
"- Боштугу: секирүү/өйдө чыгуу\n"
"- Shift: уурданып басуу/ылдый түшүү\n"
"- Q: буюмду таштоо\n"
"- I: мүлк-шайман\n"
"- Чычканы: бурулуу/кароо\n"
"- Сол чычкан баскычы: казуу/согуу\n"
"- Оң чычкан баскычы: коюу/колдонуу\n"
"- Чычкан дөңгөлөгү: буюмду тандоо\n"
"- T: маек\n"
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr "Менюга чыгуу"
#: src/game.cpp
msgid "Exit to OS"
msgstr "Оюндан чыгуу"
#: src/game.cpp
#, fuzzy
msgid "Item definitions..."
@ -827,11 +884,6 @@ msgstr ""
msgid "MiB/s"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Migrating world..."
msgstr "Клиент жаратылууда..."
#: src/game.cpp
msgid "Node definitions..."
msgstr ""
@ -844,10 +896,6 @@ msgstr "Дареги чечилүүдө..."
msgid "Respawn"
msgstr "Кайтадан жаралуу"
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Shutting down..."
@ -918,8 +966,7 @@ msgid "Key already in use"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
@ -963,6 +1010,10 @@ msgstr ""
msgid "Use"
msgstr "Колдонуу"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr "Масштаб"
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "баскычты басыңыз"
@ -1279,10 +1330,6 @@ msgstr ""
msgid "X Button 2"
msgstr ""
#: src/keycode.cpp
msgid "Zoom"
msgstr "Масштаб"
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1349,6 +1396,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1424,6 +1475,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1460,6 +1515,10 @@ msgstr ""
msgid "Build inside player"
msgstr "Көп кишилик"
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Bumpmapping"
@ -1503,6 +1562,11 @@ msgstr "Баскычтарды өзгөртүү"
msgid "Chat toggle key"
msgstr "Баскычтарды өзгөртүү"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "Команда"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1544,10 +1608,6 @@ msgstr "Жаратуу режими"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1584,14 +1644,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1746,6 +1806,10 @@ msgstr "Жаңы сырсөз"
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1762,6 +1826,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1792,14 +1860,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1812,6 +1872,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "Бөлүкчөлөрдү күйгүзүү"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1836,6 +1908,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1921,6 +1997,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1981,10 +2065,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2109,10 +2203,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr "Оюн"
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2125,13 +2215,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2161,6 +2253,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2188,15 +2289,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2292,6 +2384,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2327,6 +2453,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2486,6 +2620,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2523,7 +2664,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2674,6 +2815,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2709,8 +2865,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2720,8 +2874,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2732,8 +2884,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2743,8 +2893,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2766,10 +2914,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen Valleys"
msgstr ""
@ -3106,6 +3250,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3147,6 +3299,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3154,11 +3310,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3169,10 +3325,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Menus"
@ -3215,10 +3367,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "Mip-текстуралоо"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3423,12 +3571,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3436,7 +3590,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3470,6 +3624,11 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Report path"
msgstr "Тандоо"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key"
@ -3635,7 +3794,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3673,7 +3832,7 @@ msgstr "Тегиз жарык"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3752,10 +3911,22 @@ msgstr ""
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3770,6 +3941,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3785,6 +3962,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3890,10 +4073,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -4023,7 +4202,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -4221,49 +4400,3 @@ msgstr ""
#, fuzzy
#~ msgid "Preload inventory textures"
#~ msgstr "Жүктөлүүдө..."
#~ msgid "Exit to OS"
#~ msgstr "Оюндан чыгуу"
#~ msgid "Exit to Menu"
#~ msgstr "Менюга чыгуу"
#~ msgid ""
#~ "Default Controls:\n"
#~ "- WASD: move\n"
#~ "- Space: jump/climb\n"
#~ "- Shift: sneak/go down\n"
#~ "- Q: drop item\n"
#~ "- I: inventory\n"
#~ "- Mouse: turn/look\n"
#~ "- Mouse left: dig/punch\n"
#~ "- Mouse right: place/use\n"
#~ "- Mouse wheel: select item\n"
#~ "- T: chat\n"
#~ msgstr ""
#~ "Жарыяланбас башкаруу:\n"
#~ "- WASD: басуу\n"
#~ "- Боштугу: секирүү/өйдө чыгуу\n"
#~ "- Shift: уурданып басуу/ылдый түшүү\n"
#~ "- Q: буюмду таштоо\n"
#~ "- I: мүлк-шайман\n"
#~ "- Чычканы: бурулуу/кароо\n"
#~ "- Сол чычкан баскычы: казуу/согуу\n"
#~ "- Оң чычкан баскычы: коюу/колдонуу\n"
#~ "- Чычкан дөңгөлөгү: буюмду тандоо\n"
#~ "- T: маек\n"
#, fuzzy
#~ msgid "Start Singleplayer"
#~ msgstr "Бир кишилик"
#, fuzzy
#~ msgid "Main"
#~ msgstr "Башкы меню"
#, fuzzy
#~ msgid "Config mods"
#~ msgstr "Ырастоо"
#~ msgid "Enable Damage"
#~ msgstr "Убалды күйгүзүү"

File diff suppressed because it is too large Load Diff

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"PO-Revision-Date: 2015-09-20 17:15+0200\n"
"Last-Translator: Christian Haug <christian@metaboks.org>\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2016-10-25 21:41+0000\n"
"Last-Translator: Petter Reinholdtsen <pere-weblate@hungry.com>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/"
"minetest/minetest/nb/>\n"
"Language: nb\n"
@ -17,19 +17,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 2.4-dev\n"
"X-Generator: Weblate 2.9-dev\n"
#: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:"
msgstr ""
msgstr "Det skjedde en feil i et Lua-skript, f.eks. en mod:"
#: builtin/fstk/ui.lua
msgid "An error occured:"
msgstr ""
msgstr "Det skjedde en feil:"
#: builtin/fstk/ui.lua
msgid "Main menu"
msgstr ""
msgstr "Hovedmeny"
#: builtin/fstk/ui.lua builtin/mainmenu/store.lua
msgid "Ok"
@ -37,27 +37,27 @@ msgstr "Ok"
#: builtin/fstk/ui.lua
msgid "Reconnect"
msgstr ""
msgstr "Koble til på nytt"
#: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:"
msgstr ""
msgstr "Tjeneren har bedt om ny tilkobling:"
#: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..."
msgstr ""
msgstr "Laster..."
#: builtin/mainmenu/common.lua
msgid "Protocol version mismatch. "
msgstr ""
msgstr "Avvikende protokollversjon. "
#: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. "
msgstr ""
msgstr "Tjener krever protokollversjon $1. "
#: builtin/mainmenu/common.lua
msgid "Server supports protocol versions between $1 and $2. "
msgstr ""
msgstr "Tjener støtter protokollversjoner mellom $1 og $2. "
#: builtin/mainmenu/common.lua
msgid "Try reenabling public serverlist and check your internet connection."
@ -65,57 +65,55 @@ msgstr ""
#: builtin/mainmenu/common.lua
msgid "We only support protocol version $1."
msgstr ""
msgstr "Vi støtter kun protokollversjon $1."
#: builtin/mainmenu/common.lua
msgid "We support protocol versions between version $1 and $2."
msgstr ""
msgstr "Vi støtter protokollversjoner mellom versjon $1 og $2."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
msgstr "Avbryt"
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_mods.lua
#, fuzzy
msgid "Depends:"
msgstr "Avhenger av:"
msgstr "Avhengigheter:"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Disable MP"
msgstr "Deaktiver Alle"
msgstr "Koble ut MP"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Enable MP"
msgstr "Aktiver Alle"
msgstr "Aktiver MP"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Enable all"
msgstr "Aktiver Alle"
msgstr "Aktiver alle"
#: builtin/mainmenu/dlg_config_world.lua
msgid ""
"Failed to enable mod \"$1\" as it contains disallowed characters. Only "
"chararacters [a-z0-9_] are allowed."
msgstr ""
"Kunne ikke aktivere mod \"$1\" fordi den inneholder ulovlige tegn. Kun "
"symbolene [a-z0-9_] er tillatt."
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Hide Game"
msgstr "Spill"
msgstr "Skjul spill"
#: builtin/mainmenu/dlg_config_world.lua
msgid "Hide mp content"
msgstr ""
msgstr "Skjul mp-innhold"
#: builtin/mainmenu/dlg_config_world.lua
msgid "Mod:"
msgstr ""
msgstr "Mod:"
#: builtin/mainmenu/dlg_config_world.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
@ -123,9 +121,8 @@ msgid "Save"
msgstr "Lagre"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "World:"
msgstr "Navnet på verdenen"
msgstr "Verden:"
#: builtin/mainmenu/dlg_config_world.lua
msgid "enabled"
@ -133,7 +130,7 @@ msgstr "aktivert"
#: builtin/mainmenu/dlg_create_world.lua
msgid "A world named \"$1\" already exists"
msgstr ""
msgstr "En verden med navn \"$1\" eksisterer allerede"
#: builtin/mainmenu/dlg_create_world.lua
msgid "Create"
@ -147,6 +144,14 @@ msgstr ""
msgid "Download one from minetest.net"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr "Spill"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr ""
@ -171,8 +176,9 @@ msgstr ""
msgid "Are you sure you want to delete \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr ""
@ -188,14 +194,6 @@ msgstr ""
msgid "Delete World \"$1\"?"
msgstr ""
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Nei"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Ja"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr ""
@ -360,22 +358,14 @@ msgstr ""
msgid "Active Contributors"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Minetest Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "MultiCraft Developers"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr ""
@ -416,37 +406,37 @@ msgstr ""
msgid "Address / Port"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Creative mode"
msgstr "Opprett"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Damage enabled"
msgstr "aktivert"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Del. Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Name / Password"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "PvP enabled"
msgstr "aktivert"
@ -455,19 +445,19 @@ msgstr "aktivert"
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr "Opprett"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "Opprett"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -489,10 +479,14 @@ msgstr ""
msgid "Public"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr ""
@ -501,10 +495,6 @@ msgstr ""
msgid "Start Game"
msgstr ""
#: builtin/mainmenu/tab_server.lua
msgid "Survival Mode"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -561,6 +551,10 @@ msgstr ""
msgid "Mipmap + Aniso. Filter"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Nei"
#: builtin/mainmenu/tab_settings.lua
msgid "No Filter"
msgstr ""
@ -654,8 +648,20 @@ msgstr ""
msgid "Waving Water"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Ja"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Config mods"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Main"
msgstr ""
#: builtin/mainmenu/tab_simple_main.lua
msgid "Start Singleplayer"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
@ -663,7 +669,7 @@ msgid "Play"
msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Single Player"
msgid "Singleplayer"
msgstr ""
#: builtin/mainmenu/tab_texturepacks.lua
@ -748,10 +754,6 @@ msgstr ""
msgid "Change Password"
msgstr ""
#: src/game.cpp
msgid "Close game"
msgstr ""
#: src/game.cpp
msgid "Connecting to server..."
msgstr ""
@ -768,6 +770,45 @@ msgstr ""
msgid "Creating server..."
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr ""
#: src/game.cpp
msgid "Exit to OS"
msgstr ""
#: src/game.cpp
msgid "Item definitions..."
msgstr ""
@ -784,10 +825,6 @@ msgstr ""
msgid "MiB/s"
msgstr ""
#: src/game.cpp
msgid "Migrating world..."
msgstr ""
#: src/game.cpp
msgid "Node definitions..."
msgstr ""
@ -800,10 +837,6 @@ msgstr ""
msgid "Respawn"
msgstr ""
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
msgid "Shutting down..."
msgstr ""
@ -873,8 +906,7 @@ msgid "Key already in use"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
@ -917,6 +949,10 @@ msgstr ""
msgid "Use"
msgstr ""
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr ""
@ -1233,10 +1269,6 @@ msgstr ""
msgid "X Button 2"
msgstr ""
#: src/keycode.cpp
msgid "Zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1302,6 +1334,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1376,6 +1412,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Backward key"
msgstr ""
@ -1408,6 +1448,10 @@ msgstr ""
msgid "Build inside player"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Bumpmapping"
msgstr ""
@ -1448,6 +1492,10 @@ msgstr ""
msgid "Chat toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Chatcommands"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1489,10 +1537,6 @@ msgstr "Opprett"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1527,14 +1571,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1681,6 +1725,10 @@ msgstr ""
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1697,6 +1745,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1727,14 +1779,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1746,6 +1790,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1770,6 +1826,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1855,6 +1915,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1915,10 +1983,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2041,10 +2119,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr "Spill"
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2057,13 +2131,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2093,6 +2169,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2120,15 +2205,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2224,6 +2300,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2258,6 +2368,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2416,6 +2534,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2453,7 +2578,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2603,6 +2728,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2636,8 +2776,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2647,8 +2785,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2659,8 +2795,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2670,8 +2804,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2693,10 +2825,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen Valleys"
msgstr ""
@ -3033,6 +3161,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3074,6 +3210,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3081,11 +3221,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3096,10 +3236,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Menus"
msgstr ""
@ -3140,10 +3276,6 @@ msgstr ""
msgid "Mipmapping"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3348,12 +3480,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3361,7 +3499,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3395,6 +3533,10 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Report path"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Right key"
msgstr ""
@ -3553,7 +3695,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3590,7 +3732,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3668,10 +3810,22 @@ msgstr ""
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3686,6 +3840,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3701,6 +3861,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3804,10 +3970,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -3934,7 +4096,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2016-03-17 15:28+0000\n"
"Last-Translator: Lordmusic Player <lordmusicplro1@gmail.com>\n"
"Language-Team: Romanian <https://hosted.weblate.org/projects/minetest/"
@ -76,7 +76,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr ""
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -145,6 +146,14 @@ msgstr ""
msgid "Download one from minetest.net"
msgstr ""
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr "Joc"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Mapgen"
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr "Jocul nu are nume, sau nu ai selectat un joc"
@ -169,8 +178,9 @@ msgstr ""
msgid "Are you sure you want to delete \"$1\"?"
msgstr "Ești sigur că vrei să ștergi \"$1\"?"
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr "Șterge"
@ -186,14 +196,6 @@ msgstr "Modmgr: Pacht de mod invalid \"$1\""
msgid "Delete World \"$1\"?"
msgstr "Ștergi lumea \"$1\"?"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Nu"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Da"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr "Acceptă"
@ -363,24 +365,14 @@ msgstr "Reinstalează"
msgid "Active Contributors"
msgstr "Contribuitori activi"
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr "Dezvoltatori de bază"
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr "Credits"
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Minetest Developers"
msgstr "Dezvoltatori de bază"
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "MultiCraft Developers"
msgstr "Dezvoltatori de bază"
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr "Foști contribuitori"
@ -423,40 +415,40 @@ msgstr "Dezinstalaţi Pachetul de moduri selectat"
msgid "Address / Port"
msgstr "Adresă/Port"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr "Client"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr "Conectează"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Creative mode"
msgstr "Modul Creativ"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Damage enabled"
msgstr "activat"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Del. Favorite"
msgstr "Preferate:"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Favorite"
msgstr "Preferate:"
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Name / Password"
msgstr "Nume/Parolă"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "PvP enabled"
msgstr "activat"
@ -465,19 +457,19 @@ msgstr "activat"
msgid "Bind Address"
msgstr ""
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr "Configurează"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr "Se crează serverul..."
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Modul Creativ"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "Inventar"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr "Activează Daune"
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -500,10 +492,14 @@ msgstr ""
msgid "Public"
msgstr "Public"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr "Selectează lumea:"
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr "Server"
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr "Port server"
@ -512,11 +508,6 @@ msgstr "Port server"
msgid "Start Game"
msgstr "Începe jocul"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Survival Mode"
msgstr "Modul Creativ"
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -581,6 +572,10 @@ msgstr "Mip Mapping"
msgid "Mipmap + Aniso. Filter"
msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Nu"
#: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "No Filter"
@ -688,17 +683,31 @@ msgstr "Copaci fantezici"
msgid "Waving Water"
msgstr "Copaci fantezici"
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Modul Creativ"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Da"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Config mods"
msgstr "Configurează"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Main"
msgstr "Meniul Principal"
#: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Start Singleplayer"
msgstr "Singleplayer"
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play"
msgstr "Joacă"
#: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Single Player"
msgid "Singleplayer"
msgstr "Singleplayer"
#: builtin/mainmenu/tab_texturepacks.lua
@ -790,11 +799,6 @@ msgstr "Modifică tastele"
msgid "Change Password"
msgstr "Schimbă Parola"
#: src/game.cpp
#, fuzzy
msgid "Close game"
msgstr "joc nou"
#: src/game.cpp
msgid "Connecting to server..."
msgstr "Se conectează la server..."
@ -812,6 +816,56 @@ msgstr "Se creează clientul..."
msgid "Creating server..."
msgstr "Se crează serverul..."
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
"Controale prestabilite:\n"
"- WASD: mișcare\n"
"- Spațiu: sărire/urcare\n"
"- Shift: furișare/coborâre\n"
"- Q: aruncă obiect\n"
"- I: inventar\n"
"- Mouse: întoarcere/vedere\n"
"- Click stânga: săpare/lovire\n"
"- Click dreapta: pune/folosește\n"
"- Rotiță mouse: selectează obiect\n"
"- T: chat\n"
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
#: src/game.cpp
msgid "Exit to Menu"
msgstr "Ieși în Meniu"
#: src/game.cpp
msgid "Exit to OS"
msgstr "Ieși din joc"
#: src/game.cpp
msgid "Item definitions..."
msgstr "Definițiile obiectelor..."
@ -828,11 +882,6 @@ msgstr "Media..."
msgid "MiB/s"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Migrating world..."
msgstr "Se creează clientul..."
#: src/game.cpp
msgid "Node definitions..."
msgstr "Definițiile Blocurilor..."
@ -845,10 +894,6 @@ msgstr "Se rezolvă adresa..."
msgid "Respawn"
msgstr "Reînviere"
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Shutting down..."
@ -919,9 +964,7 @@ msgid "Key already in use"
msgstr "Tastă deja folosită"
#: src/guiKeyChangeMenu.cpp
#, fuzzy
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr ""
"Keybindings. (Dacă acest meniu apare, șterge lucrurile din minetest.conf)"
@ -966,6 +1009,10 @@ msgstr "Intră pe noclip"
msgid "Use"
msgstr "Aleargă"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr "Mărire"
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "apasă o tastă"
@ -1282,10 +1329,6 @@ msgstr "X Butonul 1"
msgid "X Button 2"
msgstr "X Butonul 2"
#: src/keycode.cpp
msgid "Zoom"
msgstr "Mărire"
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1352,6 +1395,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1427,6 +1474,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1462,6 +1513,10 @@ msgstr ""
msgid "Build inside player"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Bumpmapping"
@ -1505,6 +1560,11 @@ msgstr "Modifică tastele"
msgid "Chat toggle key"
msgstr "Modifică tastele"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "Comandă"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1546,10 +1606,6 @@ msgstr "Modul Creativ"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr "Client"
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1586,14 +1642,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1749,6 +1805,10 @@ msgstr "Noua parolă"
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1765,6 +1825,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1795,14 +1859,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1815,6 +1871,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "Activează particulele"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1841,6 +1909,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1927,6 +1999,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1988,10 +2068,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2116,10 +2206,6 @@ msgstr ""
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr "Joc"
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2132,13 +2218,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2169,6 +2257,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2196,15 +2293,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2300,6 +2388,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2335,6 +2457,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2494,6 +2624,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2531,7 +2668,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2682,6 +2819,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2717,8 +2869,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2728,8 +2878,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2740,8 +2888,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2751,8 +2897,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2774,10 +2918,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen Valleys"
@ -3136,6 +3276,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3177,6 +3325,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3184,11 +3336,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3199,10 +3351,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Menus"
@ -3245,10 +3393,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "Mip Mapping"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3453,12 +3597,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3466,7 +3616,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3501,6 +3651,11 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Report path"
msgstr "Selectează"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key"
@ -3671,7 +3826,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3709,7 +3864,7 @@ msgstr "Lumină mai bună"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3789,10 +3944,22 @@ msgstr "Pachete de tetură"
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3807,6 +3974,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3822,6 +3995,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3927,11 +4106,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Useful for mod developers."
msgstr "Dezvoltatori de bază"
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -4061,7 +4235,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -4161,6 +4335,10 @@ msgstr ""
msgid "cURL timeout"
msgstr ""
#, fuzzy
#~ msgid "Useful for mod developers."
#~ msgstr "Dezvoltatori de bază"
#~ msgid "No of course not!"
#~ msgstr "Nu, sigur că nu!"
@ -4187,6 +4365,9 @@ msgstr ""
#~ msgid "Mods:"
#~ msgstr "Moduri:"
#~ msgid "new game"
#~ msgstr "joc nou"
#~ msgid "EDIT GAME"
#~ msgstr "MODIFICĂ JOCUL"
@ -4243,52 +4424,3 @@ msgstr ""
#, fuzzy
#~ msgid "Preload inventory textures"
#~ msgstr "Se încarcă..."
#~ msgid "Exit to OS"
#~ msgstr "Ieși din joc"
#~ msgid "Exit to Menu"
#~ msgstr "Ieși în Meniu"
#~ msgid ""
#~ "Default Controls:\n"
#~ "- WASD: move\n"
#~ "- Space: jump/climb\n"
#~ "- Shift: sneak/go down\n"
#~ "- Q: drop item\n"
#~ "- I: inventory\n"
#~ "- Mouse: turn/look\n"
#~ "- Mouse left: dig/punch\n"
#~ "- Mouse right: place/use\n"
#~ "- Mouse wheel: select item\n"
#~ "- T: chat\n"
#~ msgstr ""
#~ "Controale prestabilite:\n"
#~ "- WASD: mișcare\n"
#~ "- Spațiu: sărire/urcare\n"
#~ "- Shift: furișare/coborâre\n"
#~ "- Q: aruncă obiect\n"
#~ "- I: inventar\n"
#~ "- Mouse: întoarcere/vedere\n"
#~ "- Click stânga: săpare/lovire\n"
#~ "- Click dreapta: pune/folosește\n"
#~ "- Rotiță mouse: selectează obiect\n"
#~ "- T: chat\n"
#, fuzzy
#~ msgid "Start Singleplayer"
#~ msgstr "Singleplayer"
#, fuzzy
#~ msgid "Main"
#~ msgstr "Meniul Principal"
#, fuzzy
#~ msgid "Config mods"
#~ msgstr "Configurează"
#~ msgid "Server"
#~ msgstr "Server"
#~ msgid "Enable Damage"
#~ msgstr "Activează Daune"

File diff suppressed because it is too large Load Diff

4234
po/sr_Cyrl/MultiCraft.po Normal file

File diff suppressed because it is too large Load Diff

4657
po/sw/MultiCraft.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1.2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2015-10-27 16:46+0200\n"
"Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/minetest/"
@ -76,7 +76,8 @@ msgid "We support protocol versions between version $1 and $2."
msgstr "Yalnızca $1 ve $2 arası protokol sürümleri desteklenmektedir."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
#: src/keycode.cpp
msgid "Cancel"
@ -147,6 +148,14 @@ msgstr "Minetest.net adresinden bir oyun modu indirin"
msgid "Download one from minetest.net"
msgstr "Minetest.net adresinden indirin"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game"
msgstr "Oyun"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Mapgen"
#: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected"
msgstr "Dünya seçilmedi ya da adlandırılmadı"
@ -171,8 +180,9 @@ msgstr "Ek bir oyun modu yüklü değil."
msgid "Are you sure you want to delete \"$1\"?"
msgstr " \"$1\" 'i silmek istediğinizden emin misiniz ?"
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
#: src/keycode.cpp
msgid "Delete"
msgstr "Sil"
@ -188,14 +198,6 @@ msgstr "Modmgr: \"$1\" eklenti konumu yanlış"
msgid "Delete World \"$1\"?"
msgstr " \"$1\" dünyasını sil ?"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Hayır"
#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Evet"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
msgid "Accept"
msgstr "Kabul et"
@ -359,24 +361,14 @@ msgstr "yeniden yükle"
msgid "Active Contributors"
msgstr "Aktif katkı sağlayanlar"
#: builtin/mainmenu/tab_credits.lua
msgid "Core Developers"
msgstr "Ana geliştiriciler"
#: builtin/mainmenu/tab_credits.lua
msgid "Credits"
msgstr "Hakkında"
#: builtin/mainmenu/tab_credits.lua
msgid "Dedication of the current release"
msgstr ""
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Minetest Developers"
msgstr "Ana geliştiriciler"
#: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "MultiCraft Developers"
msgstr "Ana geliştiriciler"
#: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors"
msgstr "Katkı sağlayanlar"
@ -418,36 +410,36 @@ msgstr "Seçilen eklenti paketini sil"
msgid "Address / Port"
msgstr "Adres / Port :"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client"
msgstr "Çevirimiçi Oyna"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect"
msgstr "Bağlan"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Creative mode"
msgstr "Yaratıcı mod"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Damage enabled"
msgstr "Hasar alma etkin"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Del. Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Favorite"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
msgid "Multi Player"
msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Name / Password"
msgstr "Kullanıcı Adı / Şifre :"
#: builtin/mainmenu/tab_multiplayer.lua
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "PvP enabled"
msgstr "Mücadele modu"
@ -455,19 +447,19 @@ msgstr "Mücadele modu"
msgid "Bind Address"
msgstr "Adresi doğrula"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure"
msgstr "Ayarla"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Create Server"
msgstr "Sunucu oluşturuluyor..."
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Yaratıcı Mod"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Creative Inventory"
msgstr "Envanter"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage"
msgstr "Hasarı etkinleştir"
#: builtin/mainmenu/tab_server.lua
msgid "Name/Password"
@ -490,10 +482,14 @@ msgstr "Port"
msgid "Public"
msgstr "Herkese Açık"
#: builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:"
msgstr "Dünya seç :"
#: builtin/mainmenu/tab_server.lua
msgid "Server"
msgstr "Sunucu Kur"
#: builtin/mainmenu/tab_server.lua
msgid "Server Port"
msgstr "Sunucu portu"
@ -502,11 +498,6 @@ msgstr "Sunucu portu"
msgid "Start Game"
msgstr "Oyunu Başlat"
#: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Survival Mode"
msgstr "Yaratıcı Mod"
#: builtin/mainmenu/tab_settings.lua
msgid "2x"
msgstr ""
@ -569,6 +560,10 @@ msgstr "Mipmap"
msgid "Mipmap + Aniso. Filter"
msgstr "Mipmap Aniso. Süzgeci"
#: builtin/mainmenu/tab_settings.lua
msgid "No"
msgstr "Hayır"
#: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "No Filter"
@ -673,17 +668,28 @@ msgstr "Dalgalanan Bitkiler"
msgid "Waving Water"
msgstr "Dalgalanan Su"
#: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode"
msgstr "Yaratıcı Mod"
#: builtin/mainmenu/tab_settings.lua
msgid "Yes"
msgstr "Evet"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Config mods"
msgstr "Eklentileri ayarla"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Main"
msgstr "Ana"
#: builtin/mainmenu/tab_simple_main.lua
msgid "Start Singleplayer"
msgstr "Tek kişilik oyunu başlat"
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play"
msgstr "Oyna"
#: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Single Player"
msgid "Singleplayer"
msgstr "Tek Kişilik"
#: builtin/mainmenu/tab_texturepacks.lua
@ -772,11 +778,6 @@ msgstr "Tuşları değiştir"
msgid "Change Password"
msgstr "Şifre değiştir"
#: src/game.cpp
#, fuzzy
msgid "Close game"
msgstr "Mağazayı kapat"
#: src/game.cpp
msgid "Connecting to server..."
msgstr "Sunucuya bağlanılıyor..."
@ -793,6 +794,68 @@ msgstr "İstemci oluşturuluyor..."
msgid "Creating server..."
msgstr "Sunucu oluşturuluyor..."
#: src/game.cpp
msgid ""
"Default Controls:\n"
"- WASD: move\n"
"- Space: jump/climb\n"
"- Shift: sneak/go down\n"
"- Q: drop item\n"
"- I: inventory\n"
"- Mouse: turn/look\n"
"- Mouse left: dig/punch\n"
"- Mouse right: place/use\n"
"- Mouse wheel: select item\n"
"- T: chat\n"
msgstr ""
"Varsayılanlar Kontroller:\n"
"- WASD: Hareket et\n"
"- Boşluk: Zıpla/Tırman\n"
"- Shift: Sessiz yürü/Aşağı in\n"
"- Q: Elindekini bırak\n"
"- I: Envanter\n"
"- Fare: Dön/Bak\n"
"- Sol fare: Kaz/Vur\n"
"- Sağ fare: Yerleştir/Kullan\n"
"- Fare tekerleği: Araç seç\n"
"- T: Sohbet\n"
#: src/game.cpp
msgid ""
"Default Controls:\n"
"No menu visible:\n"
"- single tap: button activate\n"
"- double tap: place/use\n"
"- slide finger: look around\n"
"Menu/Inventory visible:\n"
"- double tap (outside):\n"
" -->close\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n"
msgstr ""
"Varsayılan Kontroller:\n"
"Tüm menüler gizli:\n"
"- Tek tık: tuş etkin\n"
"- Çift tık: yerleştir/kullan\n"
"- Parmağı kaydır: etrafa bak\n"
"Menu/Encanter görünür:\n"
"- çift tık (dışarda):\n"
" -->kapat\n"
"- touch stack, touch slot:\n"
" --> move stack\n"
"- tut&bırak, iki parmağı kullan\n"
" --> slotuna bir item bırak\n"
#: src/game.cpp
msgid "Exit to Menu"
msgstr "Menüye dön"
#: src/game.cpp
msgid "Exit to OS"
msgstr "Oyundan Çık"
#: src/game.cpp
msgid "Item definitions..."
msgstr "Nesne tanımlamaları..."
@ -809,11 +872,6 @@ msgstr "Media..."
msgid "MiB/s"
msgstr ""
#: src/game.cpp
#, fuzzy
msgid "Migrating world..."
msgstr "İstemci oluşturuluyor..."
#: src/game.cpp
msgid "Node definitions..."
msgstr "Blok tanımlamaları..."
@ -826,10 +884,6 @@ msgstr "Adres çözümleniyor..."
msgid "Respawn"
msgstr "Yeniden Canlan"
#: src/game.cpp
msgid "Save and Exit"
msgstr ""
#: src/game.cpp
msgid "Shutting down..."
msgstr "Kapatılıyor..."
@ -899,9 +953,7 @@ msgid "Key already in use"
msgstr "Tuş zaten kullanımda"
#: src/guiKeyChangeMenu.cpp
#, fuzzy
msgid ""
"Keybindings. (If this menu screws up, remove stuff from multicraft.conf)"
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr "Tuş ayaları. ( Olağandışı durumlarda minetest.conf 'u düzenleyin )"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
@ -945,6 +997,10 @@ msgstr "Noclip aç/kapa"
msgid "Use"
msgstr "Kullan"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Zoom"
msgstr "Yakınlaştır"
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "tuşa bas"
@ -1261,10 +1317,6 @@ msgstr "X Button 1"
msgid "X Button 2"
msgstr "X Button 2"
#: src/keycode.cpp
msgid "Zoom"
msgstr "Yakınlaştır"
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1332,6 +1384,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1407,6 +1463,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1443,6 +1503,10 @@ msgstr ""
msgid "Build inside player"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Bumpmapping"
msgstr "Engebeler"
@ -1485,6 +1549,11 @@ msgstr "Tuşları değiştir"
msgid "Chat toggle key"
msgstr "Tuşları değiştir"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "Komut"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1526,10 +1595,6 @@ msgstr "Yaratıcı mod"
msgid "Clean transparent textures"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Client"
msgstr "Çevirimiçi Oyna"
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
@ -1566,14 +1631,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1728,6 +1793,10 @@ msgstr "Yeni şifre"
msgid "Default privileges"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1744,6 +1813,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1774,14 +1847,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1794,6 +1859,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "Parçacıkları etkinleştir"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1820,6 +1897,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Enable VBO"
@ -1906,6 +1987,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1967,10 +2056,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2097,10 +2196,6 @@ msgstr "Menü boyutları"
msgid "GUI scaling filter txr2img"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Game"
msgstr "Oyun"
#: src/settings_translation_file.cpp
msgid "Gamma"
msgstr ""
@ -2114,13 +2209,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr "Normal haritalar oluştur"
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2151,6 +2248,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2178,15 +2284,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2282,6 +2379,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2317,6 +2448,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2476,6 +2615,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2513,7 +2659,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2664,6 +2810,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2699,8 +2860,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2710,8 +2869,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2722,8 +2879,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2733,8 +2888,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2756,10 +2909,6 @@ msgstr ""
msgid "Mapblock unload timeout"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen Valleys"
@ -3118,6 +3267,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3159,6 +3316,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3166,11 +3327,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3181,10 +3342,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Menus"
@ -3227,10 +3384,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "Mip-Mapping"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3443,12 +3596,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3456,7 +3615,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3491,6 +3650,11 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Report path"
msgstr "Seç"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key"
@ -3661,7 +3825,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3699,7 +3863,7 @@ msgstr "Pürüzsüz ışıklandırma"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3780,10 +3944,22 @@ msgstr "Doku paketi"
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3798,6 +3974,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3813,6 +3995,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3918,11 +4106,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Useful for mod developers."
msgstr "Ana geliştiriciler"
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -4059,7 +4242,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp
@ -4159,6 +4342,10 @@ msgstr ""
msgid "cURL timeout"
msgstr ""
#, fuzzy
#~ msgid "Useful for mod developers."
#~ msgstr "Ana geliştiriciler"
#~ msgid "No of course not!"
#~ msgstr "Elbette hayır!"
@ -4213,76 +4400,3 @@ msgstr ""
#, fuzzy
#~ msgid "Preload inventory textures"
#~ msgstr "Dokular yükleniyor..."
#~ msgid "Exit to OS"
#~ msgstr "Oyundan Çık"
#~ msgid "Exit to Menu"
#~ msgstr "Menüye dön"
#~ msgid ""
#~ "Default Controls:\n"
#~ "No menu visible:\n"
#~ "- single tap: button activate\n"
#~ "- double tap: place/use\n"
#~ "- slide finger: look around\n"
#~ "Menu/Inventory visible:\n"
#~ "- double tap (outside):\n"
#~ " -->close\n"
#~ "- touch stack, touch slot:\n"
#~ " --> move stack\n"
#~ "- touch&drag, tap 2nd finger\n"
#~ " --> place single item to slot\n"
#~ msgstr ""
#~ "Varsayılan Kontroller:\n"
#~ "Tüm menüler gizli:\n"
#~ "- Tek tık: tuş etkin\n"
#~ "- Çift tık: yerleştir/kullan\n"
#~ "- Parmağı kaydır: etrafa bak\n"
#~ "Menu/Encanter görünür:\n"
#~ "- çift tık (dışarda):\n"
#~ " -->kapat\n"
#~ "- touch stack, touch slot:\n"
#~ " --> move stack\n"
#~ "- tut&bırak, iki parmağı kullan\n"
#~ " --> slotuna bir item bırak\n"
#~ msgid ""
#~ "Default Controls:\n"
#~ "- WASD: move\n"
#~ "- Space: jump/climb\n"
#~ "- Shift: sneak/go down\n"
#~ "- Q: drop item\n"
#~ "- I: inventory\n"
#~ "- Mouse: turn/look\n"
#~ "- Mouse left: dig/punch\n"
#~ "- Mouse right: place/use\n"
#~ "- Mouse wheel: select item\n"
#~ "- T: chat\n"
#~ msgstr ""
#~ "Varsayılanlar Kontroller:\n"
#~ "- WASD: Hareket et\n"
#~ "- Boşluk: Zıpla/Tırman\n"
#~ "- Shift: Sessiz yürü/Aşağı in\n"
#~ "- Q: Elindekini bırak\n"
#~ "- I: Envanter\n"
#~ "- Fare: Dön/Bak\n"
#~ "- Sol fare: Kaz/Vur\n"
#~ "- Sağ fare: Yerleştir/Kullan\n"
#~ "- Fare tekerleği: Araç seç\n"
#~ "- T: Sohbet\n"
#~ msgid "Start Singleplayer"
#~ msgstr "Tek kişilik oyunu başlat"
#~ msgid "Main"
#~ msgstr "Ana"
#~ msgid "Config mods"
#~ msgstr "Eklentileri ayarla"
#~ msgid "Server"
#~ msgstr "Sunucu Kur"
#~ msgid "Enable Damage"
#~ msgstr "Hasarı etkinleştir"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: minetest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-19 05:00+0300\n"
"PO-Revision-Date: 2016-05-10 00:06+0000\n"
"POT-Creation-Date: 2016-08-30 06:18+0200\n"
"PO-Revision-Date: 2016-12-13 22:32+0000\n"
"Last-Translator: Fixer <artem.brz@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/minetest/"
"minetest/uk/>\n"
@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 2.7-dev\n"
"X-Generator: Weblate 2.10-dev\n"
#: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:"
@ -86,14 +86,12 @@ msgid "Depends:"
msgstr "Залежить від:"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Disable MP"
msgstr "Вимкнути МП"
msgstr "Вимкнути модпак"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Enable MP"
msgstr "Увімкнути МП"
msgstr "Увімкнути модпак"
#: builtin/mainmenu/dlg_config_world.lua
msgid "Enable all"
@ -112,13 +110,12 @@ msgid "Hide Game"
msgstr "Приховати гру"
#: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Hide mp content"
msgstr "Приховати мп контент"
msgstr "Сховати вміст модпаку"
#: builtin/mainmenu/dlg_config_world.lua
msgid "Mod:"
msgstr "Модифікація:"
msgstr "Мод:"
#: builtin/mainmenu/dlg_config_world.lua
#: builtin/mainmenu/dlg_settings_advanced.lua src/guiKeyChangeMenu.cpp
@ -547,9 +544,8 @@ msgid "Bilinear Filter"
msgstr "Білінійна фільтрація"
#: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Bump Mapping"
msgstr "Бамп-маппінг"
msgstr "Бамп маппінг"
#: builtin/mainmenu/tab_settings.lua
msgid "Change keys"
@ -557,11 +553,11 @@ msgstr "Змінити клавіші"
#: builtin/mainmenu/tab_settings.lua
msgid "Connected Glass"
msgstr "З'єднане скло"
msgstr "З'єднувати скло"
#: builtin/mainmenu/tab_settings.lua
msgid "Fancy Leaves"
msgstr "Гарні листя"
msgstr "Гарне листя"
#: builtin/mainmenu/tab_settings.lua
msgid "Mipmap"
@ -573,7 +569,7 @@ msgstr "Міпмапи і анізотропний фільтр"
#: builtin/mainmenu/tab_settings.lua
msgid "No Filter"
msgstr "Без фільтрування"
msgstr "Без фільтрації"
#: builtin/mainmenu/tab_settings.lua
msgid "No Mipmap"
@ -846,7 +842,7 @@ msgstr "Далі"
#: src/guiKeyChangeMenu.cpp
msgid "\"Use\" = climb down"
msgstr "\"Використовувати\" = підніматися в гору"
msgstr "\"Використовувати\" = підніматися вгору"
#: src/guiKeyChangeMenu.cpp
msgid "Backward"
@ -936,6 +932,11 @@ msgstr "Переключити режим проходження крізь ст
msgid "Use"
msgstr "Використовувати"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp
#, fuzzy
msgid "Zoom"
msgstr "Збільшити"
#: src/guiKeyChangeMenu.cpp
msgid "press key"
msgstr "Натисніть клавішу"
@ -1254,11 +1255,6 @@ msgstr "Додаткова кнопка 1"
msgid "X Button 2"
msgstr "Додаткова кнопка 2"
#: src/keycode.cpp
#, fuzzy
msgid "Zoom"
msgstr "Збільшити"
#: src/settings_translation_file.cpp
msgid ""
"(X,Y,Z) offset of fractal from world centre in units of 'scale'.\n"
@ -1327,6 +1323,10 @@ msgstr ""
msgid "Active Block Modifier interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Active block range"
msgstr ""
@ -1401,6 +1401,10 @@ msgstr ""
msgid "Automaticaly report to the serverlist."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Autorun key"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key"
@ -1434,6 +1438,10 @@ msgstr ""
msgid "Build inside player"
msgstr "Будувати в межах гравця"
#: src/settings_translation_file.cpp
msgid "Builtin"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Bumpmapping"
msgstr "Бамп-маппінг"
@ -1475,6 +1483,11 @@ msgstr "Чат"
msgid "Chat toggle key"
msgstr "Чат"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Chatcommands"
msgstr "Команди чату"
#: src/settings_translation_file.cpp
msgid ""
"Choice of 18 fractals from 9 formulas.\n"
@ -1520,7 +1533,7 @@ msgstr "Клієнт"
#: src/settings_translation_file.cpp
msgid "Client and Server"
msgstr ""
msgstr "Клієнт і сервер"
#: src/settings_translation_file.cpp
msgid "Climbing speed"
@ -1552,14 +1565,14 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
"Comma-separated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Comma-seperated list of mods that are allowed to access HTTP APIs, which\n"
"allow them to upload and download data to/from the internet."
"Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())."
msgstr ""
#: src/settings_translation_file.cpp
@ -1705,6 +1718,10 @@ msgstr "Стандартний пароль"
msgid "Default privileges"
msgstr "Стандартні права"
#: src/settings_translation_file.cpp
msgid "Default report format"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Default timeout for cURL, stated in milliseconds.\n"
@ -1721,6 +1738,10 @@ msgstr ""
msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay in sending blocks after building"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Delay showing tooltips, stated in milliseconds."
msgstr ""
@ -1751,14 +1772,6 @@ msgstr ""
msgid "Desynchronize block animation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profile data. Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Detailed mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Determines terrain shape.\n"
@ -1770,6 +1783,18 @@ msgstr ""
msgid "Disable anticheat"
msgstr "Вимкнути античіт"
#: src/settings_translation_file.cpp
msgid "Disable escape sequences"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Disable escape sequences, e.g. chat coloring.\n"
"Use this if you want to run a server with pre-0.4.14 clients and you want to "
"disable\n"
"the escape sequences generated by mods."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Disallow empty passwords"
msgstr ""
@ -1794,6 +1819,10 @@ msgstr ""
msgid "Dump the mapgen debug infos."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable Joysticks"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Enable VBO"
msgstr "Увімкнути VBO"
@ -1876,6 +1905,14 @@ msgid ""
"Requires shaders to be enabled."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Engine profiling data print interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Entity methods"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Experimental option, might cause visible spaces between blocks\n"
@ -1936,10 +1973,20 @@ msgstr ""
msgid "Field of view"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view for zoom"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Field of view in degrees."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Field of view while zooming in degrees.\n"
"This requires the \"zoom\" privilege on the server."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in "
@ -2079,13 +2126,15 @@ msgstr ""
msgid "Generate normalmaps"
msgstr "Генерувати карти нормалів"
#: src/settings_translation_file.cpp
msgid "Global callbacks"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Global map generation attributes.\n"
"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n"
"and junglegrass, in all other mapgens this flag controls all decorations.\n"
"The default flags set in the engine are: caves, light, decorations\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2115,6 +2164,15 @@ msgid ""
"- error: abort on usage of deprecated call (suggested for mod developers)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Have the profiler instrument itself:\n"
"* Instrument an empty function.\n"
"This estimates the overhead, that instrumentation is adding (+1 function "
"call).\n"
"* Instrument the sampler being used to update the statistics."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Height component of the initial window size."
msgstr ""
@ -2142,15 +2200,6 @@ msgid ""
"In active blocks objects are loaded and ABMs run."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How many blocks are flying in the wire simultaneously for the whole server."
msgstr ""
#: src/settings_translation_file.cpp
msgid "How many blocks are flying in the wire simultaneously per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"How much the server will wait before unloading unused mapblocks.\n"
@ -2245,6 +2294,40 @@ msgstr ""
msgid "In-game chat console background color (R,G,B)."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument builtin.\n"
"This is usually only needed by core/builtin contributors"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument chatcommands on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument global callback functions on registration.\n"
"(anything you pass to a minetest.register_*() function)"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Active Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Instrument the action function of Loading Block Modifiers on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrument the methods of entities on registration."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Instrumentation"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Interval of saving important changes in the world, stated in seconds."
msgstr ""
@ -2279,6 +2362,14 @@ msgid ""
"Controls the amount of fine detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick button repetition interval"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Joystick frustum sensitivity"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set only: W component of hypercomplex constant determining julia "
@ -2437,6 +2528,13 @@ msgid ""
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling autorun.\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling cinematic mode.\n"
@ -2474,7 +2572,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Key for toggling the camrea update. Only used for development\n"
"Key for toggling the camera update. Only used for development\n"
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
"html#a54da2a0e231901735e3da1b0edf72eb3"
msgstr ""
@ -2624,6 +2722,21 @@ msgstr ""
msgid "Liquid update tick"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Load the game profiler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Load the game profiler to collect game profiling data.\n"
"Provides a /profiler command to access the compiled profile.\n"
"Useful for mod developers and server operators."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Loading Block Modifiers"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Main menu game manager"
msgstr ""
@ -2657,8 +2770,6 @@ msgid ""
"'humid_rivers' modifies the humidity around rivers and in areas where water "
"would tend to pool,\n"
"it may interfere with delicately adjusted biomes.\n"
"The default flags set in the engine are: altitude_chill, humid_rivers\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2668,8 +2779,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen flat.\n"
"Occasional lakes and hills can be added to the flat world.\n"
"The default flags set in the engine are: none\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2680,8 +2789,6 @@ msgid ""
"Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are automatically enabled, the 'jungles' "
"flag is ignored.\n"
"The default flags set in the engine are: biomeblend, mudflow\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -2691,8 +2798,6 @@ msgstr ""
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"The 'ridges' flag controls the rivers.\n"
"The default flags set in the engine are: mountains, ridges\n"
"The flags string modifies the engine defaults.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with 'no' are used to explicitly disable them."
@ -3054,6 +3159,14 @@ msgstr ""
msgid "Maximum hotbar width"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent in total."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that are simultaneously sent per client."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum number of blocks that can be queued for loading."
msgstr ""
@ -3095,6 +3208,10 @@ msgstr ""
msgid "Maximum number of statically stored objects in a block."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum proportion of current window to be used for hotbar.\n"
@ -3102,11 +3219,11 @@ msgid ""
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously blocks send per client"
msgid "Maximum simultaneous block sends per client"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maximum simultaneously bocks send total"
msgid "Maximum simultaneous block sends total"
msgstr ""
#: src/settings_translation_file.cpp
@ -3117,10 +3234,6 @@ msgstr ""
msgid "Maximum users"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Maxmimum objects per block"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Menus"
msgstr "Меню"
@ -3161,10 +3274,6 @@ msgstr ""
msgid "Mipmapping"
msgstr "Mіп-текстурування"
#: src/settings_translation_file.cpp
msgid "Mod profiling"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Modstore details URL"
msgstr ""
@ -3225,7 +3334,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid "Network"
msgstr ""
msgstr "Мережа"
#: src/settings_translation_file.cpp
msgid ""
@ -3369,12 +3478,18 @@ msgstr ""
msgid "Prevent mods from doing insecure things like running shell commands."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Print the engine's profiling data in regular intervals (in seconds). 0 = "
"disable. Useful for developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Privileges that players with basic_privs can grant"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiler data print interval. 0 = disable. Useful for developers."
msgid "Profiler"
msgstr ""
#: src/settings_translation_file.cpp
@ -3382,7 +3497,7 @@ msgid "Profiler toggle key"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Profiling print interval"
msgid "Profiling"
msgstr ""
#: src/settings_translation_file.cpp
@ -3416,6 +3531,11 @@ msgstr ""
msgid "Replaces the default main menu with a custom one."
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Report path"
msgstr "Вибрати шлях"
#: src/settings_translation_file.cpp
msgid "Right key"
msgstr "Права клавіша"
@ -3498,7 +3618,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid "Security"
msgstr ""
msgstr "Безпека"
#: src/settings_translation_file.cpp
msgid "See http://www.sqlite.org/pragma.html#pragma_synchronous"
@ -3574,7 +3694,7 @@ msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Shaders allow advanced visul effects and may increase performance on some "
"Shaders allow advanced visual effects and may increase performance on some "
"video cards.\n"
"Thy only work with the OpenGL video backend."
msgstr ""
@ -3611,7 +3731,7 @@ msgstr "Згладжене освітлення"
#: src/settings_translation_file.cpp
msgid ""
"Smooths camera when moving and looking around.\n"
"Smooths camera when looking around. Also called look or mouse smoothing.\n"
"Useful for recording videos."
msgstr ""
@ -3629,7 +3749,7 @@ msgstr "Крастися"
#: src/settings_translation_file.cpp
msgid "Sound"
msgstr ""
msgstr "Звук"
#: src/settings_translation_file.cpp
msgid ""
@ -3689,10 +3809,22 @@ msgstr "Шлях до текстури"
msgid "The altitude at which temperature drops by 20C"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The default format in which profiles are being saved,\n"
"when calling `/profiler save [format]` without format."
msgstr ""
#: src/settings_translation_file.cpp
msgid "The depth of dirt or other filler"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The file path relative to your worldpath in which profiles will be saved "
"to.\n"
msgstr ""
#: src/settings_translation_file.cpp
msgid "The network interface that the server listens on."
msgstr ""
@ -3707,6 +3839,12 @@ msgstr ""
msgid "The rendering back-end for Irrlicht."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The sensitivity of the joystick axes for moving the\n"
"ingame view frustum around."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The strength (darkness) of node ambient-occlusion shading.\n"
@ -3722,6 +3860,12 @@ msgid ""
"items. A value of 0 disables the functionality."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated events\n"
"when holding down a joystick button combination."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"The time in seconds it takes between repeated right clicks when holding the "
@ -3825,10 +3969,6 @@ msgstr ""
msgid "Use trilinear filtering when scaling textures."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Useful for mod developers."
msgstr ""
#: src/settings_translation_file.cpp
msgid "V-Sync"
msgstr ""
@ -3956,7 +4096,7 @@ msgid ""
"When gui_scaling_filter_txr2img is true, copy those images\n"
"from hardware to software for scaling. When false, fall back\n"
"to the old scaling method, for video drivers that don't\n"
"propery support downloading textures back from hardware."
"properly support downloading textures back from hardware."
msgstr ""
#: src/settings_translation_file.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -3,6 +3,7 @@ cmake_minimum_required(VERSION 2.6)
project(MultiCraft)
INCLUDE(CheckIncludeFiles)
INCLUDE(CheckLibraryExists)
# Add custom SemiDebug build mode
set(CMAKE_CXX_FLAGS_SEMIDEBUG "-O1 -g -Wall -Wabi" CACHE STRING
@ -189,6 +190,36 @@ if(ENABLE_CURSES)
endif()
endif(ENABLE_CURSES)
option(ENABLE_POSTGRESQL "Enable PostgreSQL backend" TRUE)
set(USE_POSTGRESQL FALSE)
if(ENABLE_POSTGRESQL)
find_program(POSTGRESQL_CONFIG_EXECUTABLE pg_config DOC "pg_config")
find_library(POSTGRESQL_LIBRARY pq)
if(POSTGRESQL_CONFIG_EXECUTABLE)
execute_process(COMMAND ${POSTGRESQL_CONFIG_EXECUTABLE} --includedir-server
OUTPUT_VARIABLE POSTGRESQL_SERVER_INCLUDE_DIRS
OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${POSTGRESQL_CONFIG_EXECUTABLE}
OUTPUT_VARIABLE POSTGRESQL_CLIENT_INCLUDE_DIRS
OUTPUT_STRIP_TRAILING_WHITESPACE)
# This variable is case sensitive for the cmake PostgreSQL module
set(PostgreSQL_ADDITIONAL_SEARCH_PATHS ${POSTGRESQL_SERVER_INCLUDE_DIRS} ${POSTGRESQL_CLIENT_INCLUDE_DIRS})
endif()
find_package("PostgreSQL")
if(POSTGRESQL_FOUND)
set(USE_POSTGRESQL TRUE)
message(STATUS "PostgreSQL backend enabled")
# This variable is case sensitive, don't try to change it to POSTGRESQL_INCLUDE_DIR
message(STATUS "PostgreSQL includes: ${PostgreSQL_INCLUDE_DIR}")
include_directories(${PostgreSQL_INCLUDE_DIR})
else()
message(STATUS "PostgreSQL not found!")
endif()
endif(ENABLE_POSTGRESQL)
option(ENABLE_LEVELDB "Enable LevelDB backend" TRUE)
set(USE_LEVELDB FALSE)
@ -262,9 +293,10 @@ if(WIN32)
set(ZLIB_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/../../zlib/zlib-1.2.5"
CACHE PATH "Zlib include directory")
set(ZLIB_LIBRARIES "${PROJECT_SOURCE_DIR}/../../zlib125dll/dll32/zlibwapi.lib"
CACHE FILEPATH "Path to zlibwapi.lib")
CACHE FILEPATH "Path to zlib library (usually zlibwapi.lib)")
set(ZLIB_DLL "${PROJECT_SOURCE_DIR}/../../zlib125dll/dll32/zlibwapi.dll"
CACHE FILEPATH "Path to zlibwapi.dll (for installation)")
CACHE FILEPATH "Path to zlib DLL (for installation)")
set(ZLIBWAPI_DLL "" CACHE FILEPATH "Path to zlibwapi DLL")
set(IRRLICHT_SOURCE_DIR "${PROJECT_SOURCE_DIR}/../../irrlicht-1.7.2"
CACHE PATH "irrlicht dir")
if(USE_FREETYPE)
@ -306,7 +338,10 @@ else()
if(APPLE)
set(PLATFORM_LIBS "-framework CoreFoundation" ${PLATFORM_LIBS})
else()
set(PLATFORM_LIBS -lrt ${PLATFORM_LIBS})
check_library_exists(rt clock_gettime "" HAVE_LIBRT)
if (HAVE_LIBRT)
set(PLATFORM_LIBS -lrt ${PLATFORM_LIBS})
endif(HAVE_LIBRT)
endif(APPLE)
# This way Xxf86vm is found on OpenBSD too
@ -346,6 +381,7 @@ add_subdirectory(network)
add_subdirectory(script)
add_subdirectory(unittest)
add_subdirectory(util)
add_subdirectory(irrlicht_changes)
set(common_SRCS
ban.cpp
@ -361,6 +397,7 @@ set(common_SRCS
craftdef.cpp
database-dummy.cpp
database-leveldb.cpp
database-postgresql.cpp
database-redis.cpp
database-sqlite3.cpp
database.cpp
@ -379,6 +416,7 @@ set(common_SRCS
light.cpp
log.cpp
map.cpp
map_settings_manager.cpp
mapblock.cpp
mapgen.cpp
mapgen_flat.cpp
@ -407,6 +445,8 @@ set(common_SRCS
porting.cpp
profiler.cpp
quicktune.cpp
reflowscan.cpp
remoteplayer.cpp
rollback.cpp
rollback_interface.cpp
serialization.cpp
@ -435,6 +475,7 @@ set(common_SRCS
# This gives us the icon and file version information
if(WIN32)
set(WINRESOURCE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../misc/winresource.rc")
set(MINETEST_EXE_MANIFEST_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../misc/minetest.exe.manifest")
if(MINGW)
if(NOT CMAKE_RC_COMPILER)
set(CMAKE_RC_COMPILER "windres.exe")
@ -447,7 +488,7 @@ if(WIN32)
DEPENDS ${WINRESOURCE_FILE})
SET(common_SRCS ${common_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/winresource_rc.o)
else(MINGW) # Probably MSVC
set(common_SRCS ${common_SRCS} ${WINRESOURCE_FILE})
set(common_SRCS ${common_SRCS} ${WINRESOURCE_FILE} ${MINETEST_EXE_MANIFEST_FILE})
endif(MINGW)
endif()
@ -462,6 +503,7 @@ set(client_SRCS
${common_SRCS}
${sound_SRCS}
${client_network_SRCS}
${client_irrlicht_changes_SRCS}
camera.cpp
client.cpp
clientmap.cpp
@ -498,6 +540,7 @@ set(client_SRCS
sky.cpp
wieldmesh.cpp
${client_SCRIPT_SRCS}
${UNITTEST_CLIENT_SRCS}
)
list(SORT client_SRCS)
@ -521,6 +564,7 @@ include_directories(
${LUA_INCLUDE_DIR}
${GMP_INCLUDE_DIR}
${JSON_INCLUDE_DIR}
${X11_INCLUDE_DIR}
${PROJECT_SOURCE_DIR}/script
)
@ -591,6 +635,9 @@ if(BUILD_CLIENT)
if (USE_CURSES)
target_link_libraries(${PROJECT_NAME} ${CURSES_LIBRARIES})
endif()
if (USE_POSTGRESQL)
target_link_libraries(${PROJECT_NAME} ${POSTGRESQL_LIBRARY})
endif()
if (USE_LEVELDB)
target_link_libraries(${PROJECT_NAME} ${LEVELDB_LIBRARY})
endif()
@ -621,6 +668,9 @@ if(BUILD_SERVER)
if (USE_CURSES)
target_link_libraries(${PROJECT_NAME}server ${CURSES_LIBRARIES})
endif()
if (USE_POSTGRESQL)
target_link_libraries(${PROJECT_NAME}server ${POSTGRESQL_LIBRARY})
endif()
if (USE_LEVELDB)
target_link_libraries(${PROJECT_NAME}server ${LEVELDB_LIBRARY})
endif()
@ -638,6 +688,28 @@ if(BUILD_SERVER)
endif()
endif(BUILD_SERVER)
# Blacklisted locales that don't work.
# see issue #4638
set(GETTEXT_BLACKLISTED_LOCALES
be
he
ko
ky
zh_CN
zh_TW
)
option(APPLY_LOCALE_BLACKLIST "Use a blacklist to avoid broken locales" TRUE)
if (GETTEXT_FOUND AND APPLY_LOCALE_BLACKLIST)
set(GETTEXT_USED_LOCALES "")
foreach(LOCALE ${GETTEXT_AVAILABLE_LOCALES})
if (NOT ";${GETTEXT_BLACKLISTED_LOCALES};" MATCHES ";${LOCALE};")
list(APPEND GETTEXT_USED_LOCALES ${LOCALE})
endif()
endforeach()
message(STATUS "Locale blacklist applied; Locales used: ${GETTEXT_USED_LOCALES}")
endif()
# Set some optimizations and tweaks
@ -647,9 +719,9 @@ if(MSVC)
# Visual Studio
# EHa enables SEH exceptions (used for catching segfaults)
set(CMAKE_CXX_FLAGS_RELEASE "/EHa /Ox /Ob2 /Oi /Ot /Oy /GL /FD /MT /GS- /arch:SSE /fp:fast /D NDEBUG /D _HAS_ITERATOR_DEBUGGING=0 /TP")
set(CMAKE_CXX_FLAGS_RELEASE "/EHa /Ox /GL /FD /MT /GS- /Zi /arch:SSE /fp:fast /D NDEBUG /D _HAS_ITERATOR_DEBUGGING=0 /TP")
#set(CMAKE_EXE_LINKER_FLAGS_RELEASE "/LTCG /NODEFAULTLIB:\"libcmtd.lib\" /NODEFAULTLIB:\"libcmt.lib\"")
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "/LTCG")
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "/LTCG /DEBUG /OPT:REF /OPT:ICF")
set(CMAKE_CXX_FLAGS_SEMIDEBUG "/MDd /Zi /Ob0 /O1 /RTC1")
@ -677,8 +749,14 @@ else()
set(OTHER_FLAGS "${OTHER_FLAGS} -Wsign-compare")
endif()
if(WIN32 AND NOT ZLIBWAPI_DLL AND CMAKE_SIZEOF_VOID_P EQUAL 4)
set(OTHER_FLAGS "${OTHER_FLAGS} -DWIN32_NO_ZLIB_WINAPI")
message(WARNING "Defaulting to cdecl for zlib on win32 because ZLIBWAPI_DLL"
" isn't set, ensure that ZLIBWAPI_DLL is set if you want stdcall.")
endif()
if(MINGW)
set(OTHER_FLAGS "-mthreads -fexceptions")
set(OTHER_FLAGS "${OTHER_FLAGS} -mthreads -fexceptions")
endif()
set(CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG ${RELEASE_WARNING_FLAGS} ${WARNING_FLAGS} ${OTHER_FLAGS} -ffast-math -Wall -pipe -funroll-loops")
@ -750,7 +828,7 @@ if(BUILD_CLIENT)
endif()
if(USE_GETTEXT)
foreach(LOCALE ${GETTEXT_AVAILABLE_LOCALES})
foreach(LOCALE ${GETTEXT_USED_LOCALES})
set_mo_paths(MO_BUILD_PATH MO_DEST_PATH ${LOCALE})
set(MO_BUILD_PATH "${MO_BUILD_PATH}/${PROJECT_NAME}.mo")
install(FILES ${MO_BUILD_PATH} DESTINATION ${MO_DEST_PATH})
@ -779,7 +857,7 @@ endif()
if (USE_GETTEXT)
set(MO_FILES)
foreach(LOCALE ${GETTEXT_AVAILABLE_LOCALES})
foreach(LOCALE ${GETTEXT_USED_LOCALES})
set(PO_FILE_PATH "${GETTEXT_PO_PATH}/${LOCALE}/${PROJECT_NAME}.po")
set_mo_paths(MO_BUILD_PATH MO_DEST_PATH ${LOCALE})
set(MO_FILE_PATH "${MO_BUILD_PATH}/${PROJECT_NAME}.mo")

View File

@ -103,6 +103,7 @@ Camera::Camera(scene::ISceneManager* smgr, MapDrawControl& draw_control,
m_cache_fall_bobbing_amount = g_settings->getFloat("fall_bobbing_amount");
m_cache_view_bobbing_amount = g_settings->getFloat("view_bobbing_amount");
m_cache_fov = g_settings->getFloat("fov");
m_cache_zoom_fov = g_settings->getFloat("zoom_fov");
m_cache_view_bobbing = g_settings->getBool("view_bobbing");
m_nametags.clear();
}
@ -387,8 +388,13 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime,
if (m_camera_mode == CAMERA_MODE_THIRD_FRONT)
m_camera_position = my_cp;
// Get FOV setting
f32 fov_degrees = m_cache_fov;
// Get FOV
f32 fov_degrees;
if (player->getPlayerControl().zoom && m_gamedef->checkLocalPrivilege("zoom")) {
fov_degrees = m_cache_zoom_fov;
} else {
fov_degrees = m_cache_fov;
}
fov_degrees = MYMAX(fov_degrees, 10.0);
fov_degrees = MYMIN(fov_degrees, 170.0);
@ -466,7 +472,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime,
{
// Start animation
m_view_bobbing_state = 1;
m_view_bobbing_speed = MYMIN(speed.getLength(), 40);
m_view_bobbing_speed = MYMIN(speed.getLength(), 70);
}
else if (m_view_bobbing_state == 1)
{
@ -478,13 +484,12 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime,
void Camera::updateViewingRange()
{
f32 viewing_range = g_settings->getFloat("viewing_range");
m_draw_control.wanted_range = viewing_range;
if (m_draw_control.range_all) {
m_cameranode->setFarValue(100000.0);
return;
}
f32 viewing_range = g_settings->getFloat("viewing_range");
m_draw_control.wanted_range = viewing_range;
m_cameranode->setFarValue((viewing_range < 2000) ? 2000 * BS : viewing_range * BS);
}
@ -546,7 +551,7 @@ void Camera::drawNametags()
// shadow can remain.
continue;
}
v3f pos = nametag->parent_node->getPosition() + v3f(0.0, 1.1 * BS, 0.0);
v3f pos = nametag->parent_node->getAbsolutePosition() + v3f(0.0, 1.1 * BS, 0.0);
f32 transformed_pos[4] = { pos.X, pos.Y, pos.Z, 1.0f };
trans.multiplyWith1x4Matrix(transformed_pos);
if (transformed_pos[3] > 0) {

View File

@ -231,6 +231,7 @@ private:
f32 m_cache_fall_bobbing_amount;
f32 m_cache_view_bobbing_amount;
f32 m_cache_fov;
f32 m_cache_zoom_fov;
bool m_cache_view_bobbing;
std::list<Nametag *> m_nametags;

File diff suppressed because it is too large Load Diff

View File

@ -21,69 +21,79 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define CAVEGEN_HEADER
#define VMANIP_FLAG_CAVE VOXELFLAG_CHECKED1
#define MGV5_LAVA_DEPTH -256
#define MGV7_LAVA_DEPTH -256
#define DEFAULT_LAVA_DEPTH (-256)
class MapgenV5;
class MapgenV6;
class MapgenV7;
class GenerateNotifier;
class CaveV5 {
/*
CavesNoiseIntersection is a cave digging algorithm that carves smooth,
web-like, continuous tunnels at points where the density of the intersection
between two separate 3d noises is above a certain value. This value,
cave_width, can be modified to set the effective width of these tunnels.
This algorithm is relatively heavyweight, taking ~80ms to generate an
80x80x80 chunk of map on a modern processor. Use sparingly!
TODO(hmmmm): Remove dependency on biomes
TODO(hmmmm): Find alternative to overgeneration as solution for sunlight issue
*/
class CavesNoiseIntersection {
public:
Mapgen *mg;
MMVManip *vm;
INodeDefManager *ndef;
CavesNoiseIntersection(INodeDefManager *nodedef, BiomeManager *biomemgr,
v3s16 chunksize, NoiseParams *np_cave1, NoiseParams *np_cave2,
s32 seed, float cave_width);
~CavesNoiseIntersection();
NoiseParams *np_caveliquids;
void generateCaves(MMVManip *vm, v3s16 nmin, v3s16 nmax, u8 *biomemap);
s16 min_tunnel_diameter;
s16 max_tunnel_diameter;
u16 tunnel_routepoints;
int dswitchint;
int part_max_length_rs;
private:
INodeDefManager *m_ndef;
BiomeManager *m_bmgr;
bool large_cave_is_flat;
bool flooded;
// configurable parameters
v3s16 m_csize;
float m_cave_width;
s16 max_stone_y;
v3s16 node_min;
v3s16 node_max;
// intermediate state variables
u16 m_ystride;
u16 m_zstride_1d;
v3f orp; // starting point, relative to caved space
v3s16 of; // absolute coordinates of caved space
v3s16 ar; // allowed route area
s16 rs; // tunnel radius size
v3f main_direction;
s16 route_y_min;
s16 route_y_max;
PseudoRandom *ps;
content_t c_water_source;
content_t c_lava_source;
content_t c_ice;
int water_level;
int ystride;
CaveV5() {}
CaveV5(Mapgen *mg, PseudoRandom *ps);
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz);
Noise *noise_cave1;
Noise *noise_cave2;
};
class CaveV6 {
/*
CavesRandomWalk is an implementation of a cave-digging algorithm that
operates on the principle of a "random walk" to approximate the stochiastic
activity of cavern development.
In summary, this algorithm works by carving a randomly sized tunnel in a
random direction a random amount of times, randomly varying in width.
All randomness here is uniformly distributed; alternative distributions have
not yet been implemented.
This algorithm is very fast, executing in less than 1ms on average for an
80x80x80 chunk of map on a modern processor.
*/
class CavesRandomWalk {
public:
MapgenV6 *mg;
MMVManip *vm;
INodeDefManager *ndef;
GenerateNotifier *gennotify;
s16 *heightmap;
// configurable parameters
s32 seed;
int water_level;
int lava_depth;
NoiseParams *np_caveliquids;
// intermediate state variables
u16 ystride;
s16 min_tunnel_diameter;
s16 max_tunnel_diameter;
u16 tunnel_routepoints;
int dswitchint;
int part_max_length_rs;
bool large_cave;
@ -104,38 +114,70 @@ public:
s16 route_y_max;
PseudoRandom *ps;
PseudoRandom *ps2;
content_t c_water_source;
content_t c_lava_source;
int water_level;
// ndef is a mandatory parameter.
// If gennotify is NULL, generation events are not logged.
CavesRandomWalk(INodeDefManager *ndef,
GenerateNotifier *gennotify = NULL,
s32 seed = 0,
int water_level = 1,
content_t water_source = CONTENT_IGNORE,
content_t lava_source = CONTENT_IGNORE);
CaveV6() {}
CaveV6(MapgenV6 *mg, PseudoRandom *ps, PseudoRandom *ps2, bool large_cave);
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
// vm and ps are mandatory parameters.
// If heightmap is NULL, the surface level at all points is assumed to
// be water_level.
void makeCave(MMVManip *vm, v3s16 nmin, v3s16 nmax, PseudoRandom *ps,
bool is_large_cave, int max_stone_height, s16 *heightmap);
private:
void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz, bool tunnel_above_ground);
void carveRoute(v3f vec, float f, bool randomize_xz);
inline bool isPosAboveSurface(v3s16 p);
};
class CaveV7 {
/*
CavesV6 is the original version of caves used with Mapgen V6.
Though it uses the same fundamental algorithm as CavesRandomWalk, it is made
separate to preserve the exact sequence of PseudoRandom calls - any change
to this ordering results in the output being radically different.
Because caves in Mapgen V6 are responsible for a large portion of the basic
terrain shape, modifying this will break our contract of reverse
compatibility for a 'stable' mapgen such as V6.
tl;dr,
*** DO NOT TOUCH THIS CLASS UNLESS YOU KNOW WHAT YOU ARE DOING ***
*/
class CavesV6 {
public:
MapgenV7 *mg;
MMVManip *vm;
INodeDefManager *ndef;
GenerateNotifier *gennotify;
PseudoRandom *ps;
PseudoRandom *ps2;
NoiseParams *np_caveliquids;
// configurable parameters
s16 *heightmap;
content_t c_water_source;
content_t c_lava_source;
int water_level;
// intermediate state variables
u16 ystride;
s16 min_tunnel_diameter;
s16 max_tunnel_diameter;
u16 tunnel_routepoints;
int dswitchint;
int part_max_length_rs;
bool large_cave;
bool large_cave_is_flat;
bool flooded;
s16 max_stone_y;
v3s16 node_min;
v3s16 node_max;
@ -148,19 +190,26 @@ public:
s16 route_y_min;
s16 route_y_max;
PseudoRandom *ps;
// ndef is a mandatory parameter.
// If gennotify is NULL, generation events are not logged.
CavesV6(INodeDefManager *ndef,
GenerateNotifier *gennotify = NULL,
int water_level = 1,
content_t water_source = CONTENT_IGNORE,
content_t lava_source = CONTENT_IGNORE);
content_t c_water_source;
content_t c_lava_source;
content_t c_ice;
// vm, ps, and ps2 are mandatory parameters.
// If heightmap is NULL, the surface level at all points is assumed to
// be water_level.
void makeCave(MMVManip *vm, v3s16 nmin, v3s16 nmax,
PseudoRandom *ps, PseudoRandom *ps2,
bool is_large_cave, int max_stone_height, s16 *heightmap = NULL);
int water_level;
CaveV7() {}
CaveV7(MapgenV7 *mg, PseudoRandom *ps);
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
private:
void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz);
void carveRoute(v3f vec, float f, bool randomize_xz, bool tunnel_above_ground);
inline s16 getSurfaceFromHeightmap(v3s16 p);
};
#endif

View File

@ -1,6 +1,7 @@
/*
CGUITTFont FreeType class for Irrlicht
Copyright (c) 2009-2010 John Norman
Copyright (c) 2016 Nathanaël Courant
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -545,6 +546,13 @@ void CGUITTFont::setFontHinting(const bool enable, const bool enable_auto_hintin
void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position, video::SColor color, bool hcenter, bool vcenter, const core::rect<s32>* clip)
{
draw(EnrichedString(std::wstring(text.c_str()), color), position, color, hcenter, vcenter, clip);
}
void CGUITTFont::draw(const EnrichedString &text, const core::rect<s32>& position, video::SColor color, bool hcenter, bool vcenter, const core::rect<s32>* clip)
{
std::vector<video::SColor> colors = text.getColors();
if (!Driver)
return;
@ -572,7 +580,7 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
}
// Convert to a unicode string.
core::ustring utext(text);
core::ustring utext = text.getString();
// Set up our render map.
core::map<u32, CGUITTGlyphPage*> Render_Map;
@ -581,6 +589,7 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
u32 n;
uchar32_t previousChar = 0;
core::ustring::const_iterator iter(utext);
std::vector<video::SColor> applied_colors;
while (!iter.atEnd())
{
uchar32_t currentChar = *iter;
@ -590,7 +599,7 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
if (currentChar == L'\r') // Mac or Windows breaks
{
lineBreak = true;
if (*(iter + 1) == (uchar32_t)'\n') // Windows line breaks.
if (*(iter + 1) == (uchar32_t)'\n') // Windows line breaks.
currentChar = *(++iter);
}
else if (currentChar == (uchar32_t)'\n') // Unix breaks
@ -627,6 +636,9 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
page->render_positions.push_back(core::position2di(offset.X + offx, offset.Y + offy));
page->render_source_rects.push_back(glyph.source_rect);
Render_Map.set(glyph.glyph_page, page);
u32 current_color = iter.getPos();
if (current_color < colors.size())
applied_colors.push_back(colors[current_color]);
}
offset.X += getWidthFromCharacter(currentChar);
@ -645,8 +657,6 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
CGUITTGlyphPage* page = n->getValue();
if (!use_transparency) color.color |= 0xff000000;
if (shadow_offset) {
for (size_t i = 0; i < page->render_positions.size(); ++i)
page->render_positions[i] += core::vector2di(shadow_offset, shadow_offset);
@ -654,7 +664,17 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
for (size_t i = 0; i < page->render_positions.size(); ++i)
page->render_positions[i] -= core::vector2di(shadow_offset, shadow_offset);
}
Driver->draw2DImageBatch(page->texture, page->render_positions, page->render_source_rects, clip, color, true);
for (size_t i = 0; i < page->render_positions.size(); ++i) {
irr::video::SColor col;
if (!applied_colors.empty()) {
col = applied_colors[i < applied_colors.size() ? i : 0];
} else {
col = irr::video::SColor(255, 255, 255, 255);
}
if (!use_transparency)
col.color |= 0xff000000;
Driver->draw2DImage(page->texture, page->render_positions[i], page->render_source_rects[i], clip, col, true);
}
}
}

View File

@ -1,6 +1,7 @@
/*
CGUITTFont FreeType class for Irrlicht
Copyright (c) 2009-2010 John Norman
Copyright (c) 2016 Nathanaël Courant
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
@ -33,6 +34,8 @@
#include <irrlicht.h>
#include <ft2build.h>
#include <vector>
#include "util/enriched_string.h"
#include FT_FREETYPE_H
namespace irr
@ -261,6 +264,10 @@ namespace gui
virtual void draw(const core::stringw& text, const core::rect<s32>& position,
video::SColor color, bool hcenter=false, bool vcenter=false,
const core::rect<s32>* clip=0);
virtual void draw(const EnrichedString& text, const core::rect<s32>& position,
video::SColor color, bool hcenter=false, bool vcenter=false,
const core::rect<s32>* clip=0);
//! Returns the dimension of a character produced by this font.
virtual core::dimension2d<u32> getCharDimension(const wchar_t ch) const;

View File

@ -19,6 +19,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "chat.h"
#include "debug.h"
#include "config.h"
#include "util/strfnd.h"
#include <cctype>
#include <sstream>
@ -251,8 +252,7 @@ u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
u32 hanging_indentation = 0;
// Format the sender name and produce fragments
if (!line.name.empty())
{
if (!line.name.empty()) {
temp_frag.text = L"<";
temp_frag.column = 0;
//temp_frag.bold = 0;
@ -267,22 +267,20 @@ u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
next_frags.push_back(temp_frag);
}
std::wstring name_sanitized = line.name.c_str();
// Choose an indentation level
if (line.name.empty())
{
if (line.name.empty()) {
// Server messages
hanging_indentation = 0;
}
else if (line.name.size() + 3 <= cols/2)
{
} else if (name_sanitized.size() + 3 <= cols/2) {
// Names shorter than about half the console width
hanging_indentation = line.name.size() + 3;
}
else
{
} else {
// Very long names
hanging_indentation = 2;
}
//EnrichedString line_text(line.text);
next_line.first = true;
bool text_processing = false;
@ -338,7 +336,7 @@ u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
while (frag_length < remaining_in_input &&
frag_length < remaining_in_output)
{
if (isspace(line.text[in_pos + frag_length]))
if (isspace(line.text.getString()[in_pos + frag_length]))
space_pos = frag_length;
++frag_length;
}
@ -686,9 +684,6 @@ ChatBackend::~ChatBackend()
void ChatBackend::addMessage(std::wstring name, std::wstring text)
{
name = unescape_enriched(name);
text = unescape_enriched(text);
// Note: A message may consist of multiple lines, for example the MOTD.
WStrfnd fnd(text);
while (!fnd.at_end())
@ -732,19 +727,22 @@ ChatBuffer& ChatBackend::getRecentBuffer()
return m_recent_buffer;
}
std::wstring ChatBackend::getRecentChat()
EnrichedString ChatBackend::getRecentChat()
{
std::wostringstream stream;
EnrichedString result;
for (u32 i = 0; i < m_recent_buffer.getLineCount(); ++i)
{
const ChatLine& line = m_recent_buffer.getLine(i);
if (i != 0)
stream << L"\n";
if (!line.name.empty())
stream << L"<" << line.name << L"> ";
stream << line.text;
result += L"\n";
if (!line.name.empty()) {
result += L"<";
result += line.name;
result += L"> ";
}
result += line.text;
}
return stream.str();
return result;
}
ChatPrompt& ChatBackend::getPrompt()

View File

@ -20,11 +20,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#ifndef CHAT_HEADER
#define CHAT_HEADER
#include "irrlichttypes.h"
#include <string>
#include <vector>
#include <list>
#include "irrlichttypes.h"
#include "util/enriched_string.h"
// Chat console related classes
struct ChatLine
@ -32,9 +34,9 @@ struct ChatLine
// age in seconds
f32 age;
// name of sending player, or empty if sent by server
std::wstring name;
EnrichedString name;
// message text
std::wstring text;
EnrichedString text;
ChatLine(std::wstring a_name, std::wstring a_text):
age(0.0),
@ -42,12 +44,19 @@ struct ChatLine
text(a_text)
{
}
ChatLine(EnrichedString a_name, EnrichedString a_text):
age(0.0),
name(a_name),
text(a_text)
{
}
};
struct ChatFormattedFragment
{
// text string
std::wstring text;
EnrichedString text;
// starting column
u32 column;
// formatting
@ -260,7 +269,7 @@ public:
// Get the recent messages buffer
ChatBuffer& getRecentBuffer();
// Concatenate all recent messages
std::wstring getRecentChat();
EnrichedString getRecentChat();
// Get the console prompt
ChatPrompt& getPrompt();

Some files were not shown because too many files have changed in this diff Show More