paramat [Fri, 11 Mar 2016 16:24:55 +0000 (16:24 +0000)]
Documentation: Clarify global and mapgen-specific mapgen flags
Auke Kok [Mon, 29 Feb 2016 05:53:26 +0000 (21:53 -0800)]
Introduce "protection_bypass" privilege.
This privilege allows map protection bypassing for server operators
and world moderators.
Initially I had thought that bypassing protection mods would have been
something that could entirely be done inside mods and minetest_game,
but the concept of protection is defined in core, in the code of
core.is_protected().
I don't feel that it would be logical to introduce a protection
concept in core, but not some way around that for server operators
to maintain map parts that need fixing, de-griefing or cleanup.
Others had noticed the same problems, and proposed a patch to
minetest_game. That patch is fine by itself, but it fails to add
protection bypass functionality for digging normal nodes and placing
nodes.
So, instead, we indroduce the new priv "protection_bypass" in core,
and modify 'on_place_node' and 'node_dig' to allow bypassing node
protections if the player holds this priv.
This priv was tested with protector redo by tenplus1.
A followup patch to Minetest Game will include allowing special checks
for doors, trapdoors, chests in Minetest Game.
Protection mods will likely want to mimic the changes in their relevant
code sections.
Auke Kok [Tue, 8 Mar 2016 04:23:34 +0000 (20:23 -0800)]
Avoid try/catch for settings.
We can just test for the presence of these settings nicely here,
no need to use a try / catch construct.
Auke Kok [Sun, 6 Mar 2016 20:02:21 +0000 (12:02 -0800)]
Add consistent monotonic day counter - get_day_count()
I've written several experimental bits of code that revolve around the
need for a consistent calendar, but implementing one is extremely hard
in mods due to time changes and mods overriding core.get_timeofday(),
which will conflict.
The second part of the problem is that doing this from a mod requires
constant maintenance of a settings file.
An implementation in core is trivial, however, and solves all of
these problems at virtually no cost: No extra branches in server
steps, and a single branch when minetest.set_time_of_day(), which is
entirely reasonable.
We store the day_count value in env_meta.txt.
The use case is obvious: This change allows mods to create an actual
virtual calendar, or properly account for seasonal changes, etc..
We add a "/days" chatcommand that displays the current day count. No
permissions are needed. It can only retrieve the day count, not
modify it.
ShadowNinja [Sat, 31 Oct 2015 00:38:22 +0000 (20:38 -0400)]
Add AreaStore custom ID API
ShadowNinja [Fri, 30 Oct 2015 23:27:48 +0000 (19:27 -0400)]
Implement AreaStore serialization
ShadowNinja [Fri, 30 Oct 2015 14:26:14 +0000 (10:26 -0400)]
Fix SpatialAreaStore not freeing removed areas
ShadowNinja [Fri, 30 Oct 2015 05:25:44 +0000 (01:25 -0400)]
Add basic AreaStore method documentation
ShadowNinja [Fri, 30 Oct 2015 04:52:45 +0000 (00:52 -0400)]
Sort AreaStore header
ShadowNinja [Fri, 30 Oct 2015 04:04:10 +0000 (00:04 -0400)]
Clean up VectorAreaStore
ShadowNinja [Fri, 30 Oct 2015 03:38:36 +0000 (23:38 -0400)]
Move AreaStore container selection logic into getOptimalImplementation
ShadowNinja [Fri, 30 Oct 2015 03:26:03 +0000 (23:26 -0400)]
Move AreaStore to util
ShadowNinja [Fri, 30 Oct 2015 03:17:44 +0000 (23:17 -0400)]
Make AreaStore cache setting private
ShadowNinja [Fri, 30 Oct 2015 03:08:32 +0000 (23:08 -0400)]
Simplify AreaStore ID management
est31 [Mon, 7 Mar 2016 18:34:48 +0000 (19:34 +0100)]
s_env.{cpp, h} cleanups
* Replace string by-val passing with const reference
* Fix code style
* Remove redundant `int table` definition and indentation level
est31 [Tue, 9 Feb 2016 06:08:31 +0000 (07:08 +0100)]
Add minetest.register_lbm() to run code on block load only
ShadowNinja [Sun, 6 Mar 2016 19:41:26 +0000 (14:41 -0500)]
Use LuaErrors in security check macros
Throwing a LuaError calls destructors as it propagates up the stack,
wheres lua_error just executes a longjmp.
Jean-Patrick Guerrero [Sat, 5 Mar 2016 10:48:02 +0000 (11:48 +0100)]
Settings Tab: Regroup dropdown datas in tables
Rui914 [Sun, 6 Mar 2016 15:53:45 +0000 (00:53 +0900)]
Faster insertion into table
Muhammad Rifqi Priyo Susanto [Sat, 5 Mar 2016 06:21:51 +0000 (13:21 +0700)]
Add forgotten valleys mapgen in mapgen name
Missing `valleys` in `settingtypes.txt` and `minetest.conf.example`.
Jean-Patrick Guerrero [Thu, 3 Mar 2016 20:48:18 +0000 (21:48 +0100)]
Update settings tab + some misc. clean-up
Maksim Gamarnik [Fri, 5 Feb 2016 18:56:56 +0000 (20:56 +0200)]
Update Android dependencies, -O3 optimization, remove old ARMv5 config
* Update OpenSSL (thanks @sapier, i use his patch!), Curl and SQLite3.
* Remove old arm config. Almost all phones that use ARMv5 have 1 core and 256-512 RAM, it's about 2-5 FPS.
* Do -O3 optimization for libs and remove -fexpensive-optimizations for Minetest (-O3 includes this! Read gcc docs).
* OpenSSL fix - thanks @sapier, again.
Duane Robertson [Wed, 2 Mar 2016 01:50:35 +0000 (19:50 -0600)]
Mgvalleys: Correct spawn problems
Increase maximum spawn altitude to reduce spawn issues.
paramat [Sat, 27 Feb 2016 23:49:53 +0000 (23:49 +0000)]
Decoration API: Allow force_placement of simple decorations
Jeija [Thu, 25 Feb 2016 09:22:54 +0000 (10:22 +0100)]
Require minetest.request_http_api to be called from the mod's main scope
Fixes #3764
ShadowNinja [Thu, 3 Mar 2016 05:57:19 +0000 (00:57 -0500)]
Fix main menu being unable to set secure settings
ShadowNinja [Thu, 3 Mar 2016 04:59:42 +0000 (23:59 -0500)]
Remove debug.getupvalue from the Lua sandbox whitelist
This function could be used to steal insecure environments from trusted mods.
ShadowNinja [Sun, 28 Feb 2016 18:27:54 +0000 (13:27 -0500)]
Add support for non-ASCII characters to chat console
This still only supports 256 characters, but that's because
Irrlicht's clipboard handlers don't support wide characters.
ShadowNinja [Sun, 28 Feb 2016 01:10:35 +0000 (20:10 -0500)]
Add Android chat form
ShadowNinja [Sat, 27 Feb 2016 21:04:44 +0000 (16:04 -0500)]
Add text selection and copying to console
ShadowNinja [Sat, 27 Feb 2016 20:51:09 +0000 (15:51 -0500)]
Unlock cursor when opening console
Esteban I. Ruiz Moreno [Mon, 3 Jun 2013 00:16:32 +0000 (21:16 -0300)]
Use the console instead of a dedicated window when pressing keymap_chat/cmd
keymap_console opens a full window for chat history browsing.
Aleksey Vorona [Wed, 2 Mar 2016 18:13:11 +0000 (10:13 -0800)]
Fix a mistake in the world format documentation
Fixed a minor mistake that made it appear as if the inventory
is serialized multiple times - once per each variable. In fact
it is serialized once per each node.
nerzhul [Tue, 1 Mar 2016 10:15:08 +0000 (11:15 +0100)]
Revert "Fix jumping at node edge"
This reverts commit
60dc01dc258db842e229351b871d0989e3e7d62c.
This fixes issue #3773
ShadowNinja [Sun, 28 Feb 2016 01:11:32 +0000 (20:11 -0500)]
Resize object_marker_red.png to 16x16
Having a non-power-of-two image broke the Android app.
paramat [Fri, 26 Feb 2016 22:30:50 +0000 (22:30 +0000)]
Nodedef: Restore smooth lighting to water
Duane Robertson [Sat, 27 Feb 2016 02:41:13 +0000 (20:41 -0600)]
Mgvalleys: Add Dry Riverbeds
Lower water table where base humidity is low.
Alter heat and humidity to compensate for river humidity and altitude
chill.
Correct misuse of surface_max_y in generateTerrain.
Remove sand trails in the water at river mouths.
Remove river water below water_level.
Correct heat/humidity calculations where noises are less than zero.
Correct heightmap errors as much as possible.
Make humidity calculations more readable.
est31 [Sat, 27 Feb 2016 04:50:42 +0000 (05:50 +0100)]
Update po files, minetest.conf.example and settings_translation_file.cpp
est31 [Sat, 27 Feb 2016 04:26:58 +0000 (05:26 +0100)]
Don't generate trailing spaces in minetest.conf.example
If the default value of a setting was empty,
it previously generated a trailing space.
Dmitry Smirnov [Sun, 21 Feb 2016 08:46:02 +0000 (09:46 +0100)]
Translated using Weblate (Russian)
Currently translated at 61.3% (483 of 787 strings)
(Merger of five commits)
Vasily Pavlov [Sun, 21 Feb 2016 08:45:44 +0000 (09:45 +0100)]
Translated using Weblate (Russian)
Currently translated at 49.5% (390 of 787 strings)
(Merger of three commits)
Miguel Isaac [Thu, 11 Feb 2016 00:41:06 +0000 (01:41 +0100)]
Translated using Weblate (Spanish)
Currently translated at 47.0% (370 of 787 strings)
(Merger of two commits from the same author)
Joan Ciprià Moreno [Sat, 6 Feb 2016 00:25:33 +0000 (01:25 +0100)]
Translated using Weblate (Catalan)
Currently translated at 37.3% (294 of 787 strings)
Laura Arjona Reina [Tue, 2 Feb 2016 18:22:47 +0000 (19:22 +0100)]
Translated using Weblate (Spanish)
Currently translated at 46.6% (367 of 787 strings)
Bruno Borges [Wed, 3 Feb 2016 19:31:55 +0000 (20:31 +0100)]
Translated using Weblate (Portuguese (Brazil))
Currently translated at 65.5% (516 of 787 strings)
Amadeo [Sun, 31 Jan 2016 16:19:31 +0000 (17:19 +0100)]
Translated using Weblate (Polish)
Currently translated at 33.9% (267 of 787 strings)
Fixer [Mon, 25 Jan 2016 22:23:31 +0000 (23:23 +0100)]
Translated using Weblate (Ukrainian)
Currently translated at 30.4% (240 of 787 strings)
Diego Martínez [Mon, 25 Jan 2016 07:35:47 +0000 (08:35 +0100)]
Translated using Weblate (Spanish)
Currently translated at 45.9% (362 of 787 strings)
Paolo DGZ [Mon, 25 Jan 2016 17:13:15 +0000 (18:13 +0100)]
Translated using Weblate (Italian)
Currently translated at 52.7% (415 of 787 strings)
Muhammad Rifqi Priyo Susanto [Tue, 26 Jan 2016 15:32:41 +0000 (16:32 +0100)]
Translated using Weblate (Indonesian)
Currently translated at 42.4% (334 of 787 strings)
Kisbenedek Márton [Thu, 28 Jan 2016 19:32:40 +0000 (20:32 +0100)]
Translated using Weblate (Hungarian)
Currently translated at 69.1% (544 of 787 strings)
(Merger of three commits)
Jeija [Thu, 25 Feb 2016 08:47:28 +0000 (09:47 +0100)]
Fix minetest.request_insecure_environment() always returning nil
Fixes #3765
RealBadAngel [Mon, 22 Feb 2016 03:26:32 +0000 (04:26 +0100)]
Mapblock mesh: Allow to use VBO
RealBadAngel [Sun, 21 Feb 2016 06:34:29 +0000 (07:34 +0100)]
Remove new_style_water
rubenwardy [Wed, 2 Sep 2015 19:21:55 +0000 (20:21 +0100)]
Cache some settings
Nathaniel Olsen [Thu, 25 Feb 2016 00:22:22 +0000 (18:22 -0600)]
Add dependencies for Fedora systems
RealBadAngel [Tue, 23 Feb 2016 19:32:57 +0000 (20:32 +0100)]
Shaders: fix fog not affecting opaque liquids
paramat [Sun, 21 Feb 2016 13:28:34 +0000 (13:28 +0000)]
Sheet Ore: Eliminate crash caused by PcgRandom range max < min
In the calculation of y_start,
when 'column height max' was large it caused
nmin.Y + max_height > nmax.Y - max_height
Now, in this situation y_start is set to the
midpoint between nmin.Y and nmax.Y
Limit y0 and y1 to between nmin.Y and nmax.Y,
otherwise index calculation, which has no checks for limits,
places them at unwanted locations in the voxelmanip
nerzhul [Tue, 23 Feb 2016 09:58:13 +0000 (10:58 +0100)]
GOTBLOCKS & DELETEBLOCKS: test packet size only once
est31 [Tue, 23 Feb 2016 00:14:00 +0000 (01:14 +0100)]
Fix android build
Android had a linker error since commit:
31e0667a4a53a238d0321194b57b083bd74c0a5b "Add Lua interface to HTTPFetchRequest"
Fixes #3766. Thanks to @MoNTE48 for reporting the bug.
orwell96 [Mon, 1 Feb 2016 18:29:53 +0000 (19:29 +0100)]
Reset block send timer when invoking setBlock(s)NotSent()
As stated in this forum thread [1], I noticed that there is a
2 second interval in which inventory changes are shown on the
client. @yyt16384 found the source of these 2 seconds:
m_nothing_to_send_pause_timer is set to 2.0 every time there
are no changes to make, but this timer is not reset when
SetBlockNotSent or setBlocksNotSent are invoked. So in worst
case, the changed block will be sent over 2 seconds too late.
With this change, changed inventories are updated almost
immediately, but it causes additional connection load.
est31 [Mon, 22 Feb 2016 16:43:42 +0000 (17:43 +0100)]
Android: hardcode leveldb revision
Newest leveldb commit breaks build.
With no fix in sight, there is no other way
than to fall back to the last working leveldb
revision, and hardcode it.
Workaround for upstream bug
https://github.com/google/leveldb/issues/340
RealBadAngel [Sat, 20 Feb 2016 09:58:40 +0000 (10:58 +0100)]
Fix getting pointed node
Fixes #3719
Closes #3753
Jeija [Thu, 18 Feb 2016 10:38:47 +0000 (11:38 +0100)]
Add Lua interface to HTTPFetchRequest
This allows mods to perform both asynchronous and synchronous HTTP
requests. Mods are only granted access to HTTP APIs if either mod
security is disabled or if they are whitelisted in any of the
the secure.http_mods and secure.trusted_mods settings.
Adds httpfetch_caller_alloc_secure to generate random, non-predictable
caller IDs so that lua mods cannot spy on each others HTTP queries.
Jeija [Wed, 17 Feb 2016 19:36:51 +0000 (20:36 +0100)]
Fix HTTPFetchRequest performing a GET request if post_data is supplied
Instead, perform a POST request with post_data.
RealBadAngel [Sat, 20 Feb 2016 03:42:35 +0000 (04:42 +0100)]
Camera: remove auto tune FPS, single view range setting
RealBadAngel [Sat, 20 Feb 2016 02:37:26 +0000 (03:37 +0100)]
Remove preload_item_visuals code
Closes #3748
RealBadAngel [Sat, 20 Feb 2016 05:53:56 +0000 (06:53 +0100)]
Dont make fastface if tile is not seamless
Fixes #3378
Closes #3751
BlockMen [Fri, 19 Feb 2016 09:03:02 +0000 (10:03 +0100)]
Restore simple settings tab and add advanced settings as dialog
Loic Blot [Sat, 20 Feb 2016 08:44:22 +0000 (09:44 +0100)]
Little collision.cpp cleanups
gregorycu [Tue, 27 Jan 2015 12:33:54 +0000 (23:33 +1100)]
Fix jumping at node edge
ShadowNinja [Sat, 20 Feb 2016 00:55:31 +0000 (19:55 -0500)]
Don't print locale directory error message when GetText is disabled
Also, downgrade the error to a warning.
Jeija [Fri, 19 Feb 2016 20:14:38 +0000 (21:14 +0100)]
Ignore spaces in secure.trusted_mods setting
RealBadAngel [Thu, 18 Feb 2016 16:17:17 +0000 (17:17 +0100)]
Minimap: show player markers
RealBadAngel [Fri, 19 Feb 2016 13:13:21 +0000 (14:13 +0100)]
Camera: Don't count camera offset twice for Nametagged CAOs
ShadowNinja [Thu, 18 Feb 2016 21:06:07 +0000 (16:06 -0500)]
Require request_insecure_environment to be called from the mod's main scope
Previously you could steal a secure environment from a trusted mod by wrapping
request_insecure_environment with some code like this:
local rie_cp = minetest.request_insecure_environment
local stolen_ie
function minetest.request_insecure_environment()
local ie = rie_cp()
stolen_ie = stolen_ie or ie
return ie
end
paramat [Wed, 17 Feb 2016 02:39:21 +0000 (02:39 +0000)]
Clientmap: Define p_nodes_min/max as v3s32 instead of v3s16
'cam_pos_nodes -/+ box_nodes_d' can exceed the range of v3s16
when a player is near the world edge using a large view range
This previously caused world to disappear
Create new function getBlocksInViewRange() called from
updateDrawList() and renderMap()
Correct code style throughout updateDrawList() and renderMap()
RealBadAngel [Sat, 13 Feb 2016 22:39:37 +0000 (23:39 +0100)]
HOTFIX: fix too agressive block culling
RealBadAngel [Mon, 15 Feb 2016 13:01:01 +0000 (14:01 +0100)]
Move object nametags to camera
est31 [Tue, 16 Feb 2016 22:58:30 +0000 (23:58 +0100)]
Clientiface: remove "value is dummy" from docs
Commit
6a1670dbc31cc0e44178bbd9ad34ff0d5981a060 "Migrate to STL containers/algorithms."
has replaced core::map<T, bool> with std::set<T>, but didn't update
the accompanying comment saying "value is dummy". This happened at
two places.
RealBadAngel [Tue, 16 Feb 2016 02:51:57 +0000 (03:51 +0100)]
Mapblock mesh: Eliminate meshgen lags
RealBadAngel [Fri, 12 Feb 2016 11:25:20 +0000 (12:25 +0100)]
Use vertices with tangents only when its needed.
Loic Blot [Sun, 14 Feb 2016 16:45:06 +0000 (17:45 +0100)]
Player::accelerateHorizontal/Vertical should be member of LocalPlayer
RealBadAngel [Sun, 14 Feb 2016 08:00:34 +0000 (09:00 +0100)]
Use proper variable types for uniform sampler layers
RealBadAngel [Sat, 13 Feb 2016 21:08:58 +0000 (22:08 +0100)]
Formspec: fix broken irrlicht 1.7 build
Fixes #3701.
RealBadAngel [Tue, 9 Feb 2016 09:43:38 +0000 (10:43 +0100)]
Formspec: recreate item_image_button pressed state for its image and label
est31 [Sat, 13 Feb 2016 00:45:06 +0000 (01:45 +0100)]
Remove unused 'm_selection_active' field
Thanks @ExcaliburZero for noticing. Fixes #3698.
nerzhul [Thu, 11 Feb 2016 14:21:21 +0000 (15:21 +0100)]
v2d & aabbox3d<f32> & sky cleanups
* Sky: rename Box => m_box and inline getBoundingBox
* Uniformize aabbox3d<f32> to aabb3f
Loic Blot [Wed, 10 Feb 2016 23:10:05 +0000 (00:10 +0100)]
Drop luaentity_common.h which is not included anywhere
RealBadAngel [Thu, 11 Feb 2016 03:57:01 +0000 (04:57 +0100)]
Use single box for halo mesh
RealBadAngel [Thu, 11 Feb 2016 06:22:15 +0000 (07:22 +0100)]
Set proper GLSL pixel shader version
RealBadAngel [Wed, 10 Feb 2016 03:27:45 +0000 (04:27 +0100)]
Dump shader programs on compile errors
paramat [Thu, 11 Feb 2016 03:40:50 +0000 (03:40 +0000)]
Documentation: Remove now unused 'vertical spawn range'
Diego Martinez [Wed, 10 Feb 2016 00:46:22 +0000 (21:46 -0300)]
Initialize facedir and wallmounted tables only once.
This makes the functions a bit faster since they don't
have to recreate the tables every invocation, and makes
the code more readable.
Also, document `wallmounted_to_dir`.
The function was implemented but not documented in `lua_api.txt`.
Kahrl [Tue, 9 Feb 2016 07:56:40 +0000 (08:56 +0100)]
Log /clearobjects mode
Kahrl [Mon, 8 Feb 2016 21:20:04 +0000 (22:20 +0100)]
Add '/clearobjects quick'
Auke Kok [Sun, 24 Jan 2016 03:53:27 +0000 (19:53 -0800)]
Fix backface culling when connecting to new servers.
Introduce a new contentfeatures version (8). When clients
connect using v27 protocol version, they can assume that
the tiledef.backface_culling is trustable, but if clients
connect to servers providing contentfeatures version 7,
then the v27 clients know that backface culling settings
provided by the server in tiledefs are bogus for mesh,
plantlike, firelike or liquid drawtype nodes.
thanks to hmmmm, est31, nerzhul.
Tested on new client - new server, new client - old server
old client - new server.
Loic Blot [Tue, 9 Feb 2016 22:46:20 +0000 (23:46 +0100)]
Fix inverted conditions in shader.cpp
Loic Blot [Tue, 9 Feb 2016 22:03:54 +0000 (23:03 +0100)]
shader.cpp: don't test twice if shader programs are present
Also use string::empty method, it is better than comparing with empty strings.
RealBadAngel [Tue, 9 Feb 2016 05:06:10 +0000 (06:06 +0100)]
FormSpec: Add StaticTextSpec and superimpose over item image buttons