aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2016-10-05Chat: new settings to prevent spamLoic Blot
Added the following chat coreside features * Chat messages length limit * Message rate limiting * Message rate kicking Note: * handleChat now takes RemotePlayer pointer instead of u16 to remove useless lookups
2016-10-04Mapblock_mesh_generate_special: Improve performanceparamat
Remove uses of std::map. Make sure we use ContentFeatures reference not value. Original commit by gregorycu.
2016-10-03Fix build/warning on non X11 platformsest31
2016-10-03Formspec: Add container[] and container_end[] elementsrubenwardy
2016-10-02Allow nothing to be selected from formspec parameterssfan5
2016-09-30Mgv7: Avoid mid-air spawn on disabled mountain terrain, optimise functionparamat
'getSpawnLevelAtPoint()' did not account for disabled mountains, it was possible to be spawned in mid-air where a mountain surface would have been. Avoid check for river area if rivers are disabled.
2016-09-30Fix android buildest31
Fixes #4493.
2016-09-29Only include keycode unittests in client build (fixes #4559)sfan5
2016-09-25Add keycode.cpp unittestssfan5
2016-09-25Rewrite keycode.cpp (Keycode handling & names)sfan5
2016-09-21Don't use ZLIB_WINAPI if the required DLL is not provided to CMakesfan5
This allows you to use an stdcall zlib (zlib1.dll instead of zlibwapi.dll) when building Minetest for win32.
2016-09-21Do not serialize empty NodeMetadatasfan5
This commit fixes #4516, though note that this will gradually fix MapBlocks as they are used/modified and thus re-serialized.
2016-09-21Increase default font size by 1James Stevenson
2016-09-17Register.lua: Throw error if node 'light_source' > core.LIGHT_MAXparamat
Add 'core.LIGHT_MAX = 14' to builtin/game/constants.lua with the intention to replace misplaced 'default.LIGHT_MAX = 14' in Minetest Game. Add comment in light.h requiring the constant be changed in both places. Add lighting bug warning to note in lua_api.txt. There are hundreds of mod uses of 15 which causes a lighting bug.
2016-09-15Add an [invert:<mode> texture modifierThomas--S
Inverts the given channels of the base image. Mode may contain the characters "r", "g", "b", "a". Only the channels that are mentioned in the mode string will be inverted.
2016-09-15Collision: Improve performance by combining 6 vectors into 1 using a structShadowNinja
2016-09-14Decorations: Generalise 'spawn by' to be used by all decoration typesparamat
In lua_api.txt, make clear that 'place on' and 'spawn by' can be lists.
2016-09-14Allow escaping of texture names when passed as an argument to a modifiersfan5
2016-09-13Fix "unknown CMake command "check_library_exists" (#4517)Eric Mountain
Adds CMakeLists.txt include to fix this issue: $ cmake . -DBUILD_SERVER=TRUE -DBUILD_CLIENT=FALSE \ -DCMAKE_BUILD_TYPE=Release -DENABLE_CURL=TRUE -DENABLE_CURSES=FALSE \ -DENABLE_FREETYPE=TRUE -DENABLE_GETTEXT=FALSE \ -DENABLE_POSTGRESQL=FALSE -DENABLE_SOUND=FALSE -DENABLE_LUAJIT=TRUE \ -DIRRLICHT_SOURCE_DIR=$HOME/irrlicht-1.8.4 -LH ... CMake Error at src/CMakeLists.txt:339 (check_library_exists): Unknown CMake command "check_library_exists". ...
2016-09-12Plantlike meshoptions: fix degrotate. (#4512)Auke Kok
This snuck in with the meshoptions patch and accidentally kills degrotate plants. Thanks to @hybriddog for finding this.
2016-09-10Return nil on empty get_area() (#4508)James Stevenson
2016-09-09Anticheat: Use the physics_override modifiers aswellSmallJoker
2016-09-08Make getStackMax return the correct maximal stack sizeSmallJoker
2016-09-08Add minetest.unregister_item and minetest.register_alias_forcepaly2
2016-08-30Document keymap_autorun in settingtypes.txt and minetest.conf.example (#4486)Rui
2016-08-30Update minetest.conf.example and settings_translation_file.cppest31
2016-08-29Fix background formspec elements from interfering with each otherrubenwardy
Fixes #4397
2016-08-27Allow fields to choose whether they close on enter pressrubenwardy
2016-08-27Submit name of field on enter key pressrubenwardy
2016-08-26Camera: Higher frequency limit for view/hand bobbing and footstepsparamat
Rebased and tuned version of Calinou's original pull request. 'm_view_bobbing_speed' controls the frequency of view bobbing, hand bobbing and footsteps, it was limited to a maximum of 40 (walking frequency) so did not increase if player speed was modified by a 'speed buff', a sprinting mod or modified in .conf or advanced settngs. This commit raises the limit to 70 which is suitable for sprinting.
2016-08-26Make plantlike drawtype more funAuke Kok
Adds several new ways that the plantlike drawtype mesh can be changed. This requires paramtype2 = "meshoptions" to be set in the node definition. The drawtype for these nodes should be "plantlike". These modifications are all done using param2. This field is now a complex bitfield that allows some or more of the combinations to be chosen, and the mesh draw code will choose the options based as neeeded for each plantlike node. bit layout: bits 0, 1 and 2 (values 0x1 through 0x7) are for choosing the plant mesh shape: 0 - ordinary plantlike plant ("x" shaped) 1 - ordinary plant, but rotated 45 degrees ("+" shaped) 2 - a plant with 3 faces ("*" shaped) 3 - a plant with 4 faces ("#" shaped) 4 - a plant with 4 faces ("#" shaped, leaning outwards) 5 through 7 are unused and reserved for future mesh shapes. bit 3 (0x8) causes the plant to be randomly offset in the x,z plane. The plant should fall within the 1x1x1 nodebox if regularly sized. bit 4 (0x10) causes the plant mesh to grow by sqrt(2), and will cause the plant mesh to fill out 1x1x1, and appear slightly larger. Texture makers will want to make their plant texture 23x16 pixels to have the best visual fit in 1x1x1 size. bit 5 (0x20) causes each face of the plant to have a slight negative Y offset in position, descending up to 0.125 downwards into the node below. Because this is per face, this causes the plant model to be less symmetric. bit 6 (0x40) through bit 7 (0x80) are unused and reserved for future use. !(https://youtu.be/qWuI664krsI)
2016-08-22Client: disable pre v25 init sending by defaultest31
Disable the ability to connect to old servers by default to improve password security. If people still want to connect to old (0.4.12 and earlier) servers, they can flip the send_pre_v25_init setting. Add the ability to detect if we've tried to connect to a server which only supports the pre v25 init protocol, and show an apropriate error message. Most times the error will already be catched at the serverlist level, the detection mechanism only acts as last resort, because the "Connection timed out" error message that would be shown otherwise would be very confusing. Automatic "fixing" of this condition is not desired, as it would allow for downgrade attacks. As already 161 of the 167 servers on the serverlist support the new srp based auth protocol (> 96%), the breakage should be minimal. Follow up of commit af30183124d40a969040d7de4b3a487feec466e4 "Add option to not send pre v25 init packet" Also change the pessimistic assumption of masterlist server versions to optimistic, in order to avoid buggy behaviour (favourites not in the serverlist would be denied to connect to, etc).
2016-08-22Move on join and on leave messages to lua (#4460)Xunto
2016-08-21gettext.h: include <locale> before defining the gettext macro (#4452)kahrl
Fixes #4446: a syntax error that happens if something else (such as <iomanip> or <locale> in certain libstdc++ versions) includes <libintl.h> later, which contains a function declaration for gettext that gets mangled by the macro. See the added comment in gettext.h and the discussion in #4446/#4452 for details.
2016-08-20Also support X11 icon for minetest copies installed via make install (#4407)est31
Fixes #4323.
2016-08-20Tidy up generate_from_settingtypes.lua a bit.Tim
* Multiline strings * Table-concat instead of String-concats * string.rep instead of loop-concat * string.format %q instead of manual quotation by gsub * Assert writeable files * Generate new settings_translation_file
2016-08-18Mapblock mesh: Fix updateFastFaceRow tiling issueobneq
Increase maximum length of tiled node rows from 2 to mapblock size.
2016-08-18Script API: Make the craft recipe field 'method' consistentSmallJoker
2016-08-12Add an [opacity:<r> texture modifier. Makes the base image transparent ↵Thomas--S
according to the given ratio. r must be between 0 and 255. 0 means totally transparent. 255 means totally opaque. Useful for texture overlaying.
2016-08-11Use the standard to_string() functions for C++11 (#4279)Rogier-5
If compiling according to a C++ version before C++11, then define std::to_string ourselves. Add a to_wstring version as well As std::to_string() for floating point types uses %.6f as floating point format converter, instead of %G, it needs special care. To preserve ftos() behavior (which is expected to use the %G format converter), it no longer uses to_string().
2016-08-11Add infotext containing entity type (e.g. mobs:cow) to unknown entities (#4431)Rogier-5
If a mod is disabled, or upgraded without sufficient backward compatibility, then entities it has put into the world become unknown, and continue moving around, but are completely unrecognisable. This change allows the player to see their type, and therefore which mod is or was responsible.
2016-08-10couple of memory leaks fixes.David Carlier
2016-08-10Zooming the camera requires the 'zoom' privilegeBen Deutsch
2016-08-10Add zoom, tweakable with zoom_fov, default key: Z (like optifine)Esteban I. Ruiz Moreno
2016-08-10Lua->C getintfield() use lua_tointeger (#4408)Tomas
previously function used tonumber which returned float this caused errors in large numbers and resulted in obj-def-handlers being invalid when retrived from lua tables in c
2016-08-10Fixes for compiling with a newer (system) jsoncpp (#4429)Rogier-5
* Move included json code to jsoncpp subdirectory This is needed to avoid having to specify the minetest src directory as a system include when fixing the json includes. * Fix json includes They used "", so that the compiler searches the project's directory first. The result was that when compiling with a system jsoncpp, the project's own version of json.h was still included, instead of the system version. The includes now use <>, so a system location, or one specified with '-Ilocation' is searched only. * Fix for jsoncpp deprecated function warning When compiling with a newer version of jsoncpp (and ENABLE_SYSTEM_JSONCPP=true), jsoncpp emits a warning about a deprecated function that minetest uses.
2016-08-10Permit usage of std::unordered_map & std::unorderered_set on c++11 compilers ↵Ner'zhul
(#4430) This fallback to std::map & std::set for older compilers Use UNORDERED_SET as an example in decoration and ore biome sets Use UNORDERED_MAP as an example in nameidmapping
2016-08-05Decorations: Fix decoration height check errorsparamat
Fix height check comparison from '>=' to '>'. Fix getHeight() for schematic decorations to account for 'deco place center y' flag and for how normal placement sinks schematic 1 node into the ground. Jungletrees were not being placed at y = 46, y = 47 despite having an acceptable 16 nodes of height above ground surface.
2016-08-04Mapgen: Remove unused 'flat' and 'trees' flags from mg_flagsparamat
When the 'flat' and 'trees' flags were moved into mgv6_spflags they were left in mg_flags in an attempt to support old mgv6 worlds. However their appearence in mg_flags causes confusion, also, later, old-world support was found to be broken for mgv6 worlds with 'notrees'. This commit cleans up the mess and comes a month after a thread warning of the change, and explaining the required action, was posted in the news subforum. Only old mgv6 worlds with 'flat' or 'notrees' are affected, a small minority of worlds, the required action being correctly setting these flags in mgv6_spflags. Disable a section of the 'map settings manager' unit test which is to be changed as it is causing problems for pull requests.
2016-08-04Fix l_request_insecure_environment not ignoring all whitespace (#4395)Dorian Wouters
l_request_insecure_environment didn't ignore all whitespace in the secure.trusted_mods config option. Replaces std::remove with std::remove_if and the isspace function.