you [Mon, 5 Feb 2018 14:17:10 +0000 (15:17 +0100)]
Add minetest.is_player (#7013)
* Add minetest.is_player
* First use for is_player
mazocomp [Sat, 21 Apr 2018 11:07:25 +0000 (14:07 +0300)]
"static constexpr v3s16 light_dirs[8]" fails to compile, sync it with master! (#7261)
mazocomp [Fri, 20 Apr 2018 17:55:23 +0000 (20:55 +0300)]
Fix C++11 feature detection for undefined _MSC_VER (#7255)
sfan5 [Fri, 2 Feb 2018 22:34:09 +0000 (23:34 +0100)]
Refine movement anticheat again (#7004)
* Account for walking speed in vertical dir
* Avoid undefined behaviour due to division-by-zero
sfan5 [Sun, 28 Jan 2018 09:21:21 +0000 (10:21 +0100)]
Apply physics overrides correctly during anticheat calculations (#6970)
Pedro Gimeno [Tue, 9 Jan 2018 18:07:14 +0000 (19:07 +0100)]
Fix off-by-one in log output line length (#6896)
Pedro Gimeno [Mon, 8 Jan 2018 20:32:15 +0000 (21:32 +0100)]
Fix buffer parameter not working in LuaPerlinNoiseMap::l_getMapSlice()
you [Thu, 4 Jan 2018 13:25:20 +0000 (14:25 +0100)]
Fix Wstringop-overflow warning from util/srp.cpp (#6855)
* Fix Wstringop-overflow warning from util/srp.cpp
rubenwardy [Fri, 22 Dec 2017 10:00:57 +0000 (10:00 +0000)]
Fix rounding error in g/set_node caused by truncation to float
number Zero [Sun, 24 Dec 2017 21:54:43 +0000 (00:54 +0300)]
Fix dancing text
nOOb3167 [Fri, 22 Dec 2017 10:33:46 +0000 (11:33 +0100)]
Fix undefined behaviour on getting pointer to data in empty vector
`&vector[0]` is undefined if vector.empty(), causing build failure on MSVC
Vitaliy [Thu, 21 Dec 2017 19:58:06 +0000 (22:58 +0300)]
Fix wrong scrolling (#6809)
SmallJoker [Tue, 12 Dec 2017 18:19:04 +0000 (19:19 +0100)]
Builtin: Fix handle_node_drops crash with nil digger
SmallJoker [Sun, 13 Aug 2017 07:49:29 +0000 (09:49 +0200)]
Damage: Remove damage ignore timer
Luis Cáceres [Wed, 6 Dec 2017 16:32:05 +0000 (16:32 +0000)]
Ensure no item stack is being held before crafting (#4779)
raymoo [Sun, 3 Dec 2017 09:28:35 +0000 (01:28 -0800)]
Shut down mapgen threads before other shutdown tasks (#6689)
Solves some issues with ModStorage functionality in mapgen threads
that occurred when mapgen threads continued to run after the main
server thread had stopped. Also shuts down mapgen threads before
shutdown callbacks are called.
sfan5 [Mon, 27 Nov 2017 17:00:30 +0000 (18:00 +0100)]
Update documentation regarding authentication handler and related functions
Properly document it instead of referencing the builtin handler as
authoritative "example" code.
Also adds definition of get_auth_handler() which was missing previously.
sfan5 [Thu, 23 Nov 2017 22:35:52 +0000 (23:35 +0100)]
Hint at problematic code when logging deprecated calls
Ezhh [Sat, 25 Nov 2017 23:18:50 +0000 (23:18 +0000)]
Improve documentation for player:set_attribute()
SmallJoker [Wed, 22 Nov 2017 18:25:26 +0000 (19:25 +0100)]
Inventory: Restrict access from too far away
SmallJoker [Tue, 21 Nov 2017 19:21:52 +0000 (20:21 +0100)]
core.rotate_node: Run callbacks like with any regular placed node (#6648)
paramat [Wed, 15 Nov 2017 23:52:31 +0000 (23:52 +0000)]
Biome dust node: Only place on 'walkable' cubic non-liquid drawtypes
No longer decide placement on 'buildable_to' parameter.
Dust nodes only look acceptable placed on cubic nodes.
Modders may not want to make their plantlike decorations 'buildable_to'.
ezhh [Mon, 13 Nov 2017 01:42:57 +0000 (01:42 +0000)]
Improve Settings tab button alignments
paramat [Sun, 12 Nov 2017 19:10:08 +0000 (19:10 +0000)]
Lua_api.txt: Add documentation of required mapgen aliases
Ezhh [Sun, 12 Nov 2017 00:45:22 +0000 (00:45 +0000)]
Remove incorrect entry from settingtypes
sfan5 [Tue, 7 Nov 2017 10:47:28 +0000 (11:47 +0100)]
Make use of safe file writing in auth handler (fixes #6576)
sfan5 [Tue, 7 Nov 2017 10:46:06 +0000 (11:46 +0100)]
Add minetest.safe_write_file() to script API
Muhammad Rifqi Priyo Susanto [Sat, 3 Jun 2017 02:51:48 +0000 (09:51 +0700)]
Fix issue Minetest crash when custom font path is not exist
We try to use default fallback for both mono and main font when custom font path is not exist. This way, if Minetest is not corrupted, we could avoid crash.
Ezhh [Sun, 5 Nov 2017 10:15:32 +0000 (10:15 +0000)]
Fix Settings tab formspec alignment (#6585)
Lars Hofhansl [Sun, 5 Nov 2017 01:05:47 +0000 (18:05 -0700)]
Do not scale texture unless necessary.
This avoids scaling textures to 'texture_min_size' unless it is actually
required (because either auto-scaling or bi/trilinear filtering is enabled)
sfan5 [Sat, 4 Nov 2017 21:19:27 +0000 (22:19 +0100)]
httpfetch: Enable gzip support
Rob Blanckaert [Mon, 30 Oct 2017 07:18:18 +0000 (00:18 -0700)]
Add sha1 to lua utils. (#6563)
rubenwardy [Sun, 29 Oct 2017 18:31:50 +0000 (18:31 +0000)]
Fix day_night_ratio_do_override not being initialised server-side
Causes get_day_night_ratio() to return unpredictable results.
lhofhansl [Sat, 28 Oct 2017 08:33:47 +0000 (01:33 -0700)]
Avoid filtering low-res textures for animated meshes (incl. players) (#6562)
raymoo [Sat, 28 Oct 2017 08:30:50 +0000 (01:30 -0700)]
Fix default item callbacks to work with nil users (#5819)
* Fix default item callbacks to work with nil users
* item.lua: Handle node drops for invalid players
The if-condition for the dropping loop is the same as `inv`, which means that the 2nd possible definition of `give_item` is never used.
Remove redundant `local _, dropped_item`
Auke Kok [Fri, 20 Oct 2017 04:39:45 +0000 (21:39 -0700)]
Correct `prot_vers` in lua_api.txt.
We should avoid providing incorrect struct members in documentation
since people will be coding based on them.
Esteban I. RM [Sun, 15 Oct 2017 05:52:05 +0000 (02:52 -0300)]
Don't try to craft a non-existent item
rubenwardy [Sat, 14 Oct 2017 17:28:56 +0000 (18:28 +0100)]
Profiler: Fix var args not being passed to callback register function
Fixes #6517
Loïc Blot [Tue, 10 Oct 2017 10:27:08 +0000 (12:27 +0200)]
Thread: fix a crash on Windows due to data race condition on Thread::m_start_finished_mutex (#6515)
Loic Blot [Mon, 9 Oct 2017 22:47:37 +0000 (00:47 +0200)]
NetworkPacket::putRawPacket: resize m_data to datasize + memcpy
In some cases NetworkPacket was created using default constructor and m_data is not properly sized.
This fixed out of bounds memory copy
Also use memcpy instead of std::vector affectation to enhance packet creation
adrido [Sat, 7 Oct 2017 13:13:13 +0000 (15:13 +0200)]
Replace deprecated WINAPI GetVersionInfoEx (#6496)
* Replace deprecated WINAPI GetVersionInfoEx
Rob Blanckaert [Sat, 7 Oct 2017 13:11:48 +0000 (09:11 -0400)]
Add setting for near plane distance. (#6395)
* Allow setting the near plane
* - Add near_plane limit of 0.5 to prevent x-ray.
- Add more details to near_plane setting.
SmallJoker [Sat, 7 Oct 2017 13:11:07 +0000 (15:11 +0200)]
Unkown nodes: Provide position on interact (#6505)
* Unkown nodes: Provide position on interact
SmallJoker [Mon, 2 Oct 2017 18:40:59 +0000 (20:40 +0200)]
ParticleSpawner::step cleanup and rotation fix (#6486)
* Particles: Move spawner code to a separate fucntion
paramat [Tue, 19 Sep 2017 15:39:30 +0000 (16:39 +0100)]
CAO footstep sounds: Reduce gain to balance volume
raymoo [Sat, 30 Sep 2017 13:23:52 +0000 (06:23 -0700)]
Fix attached particle spawners far from spawn (#6479)
* Fix attached particle spawners far from spawn
When far from spawn, attached particle spawners
did not spawn particles.
SmallJoker [Sat, 23 Sep 2017 14:29:48 +0000 (16:29 +0200)]
Localplayer: Fix disable_jump effect and getStandingNodePos()
Leave the old move code untouched.
raymoo [Thu, 28 Sep 2017 16:40:47 +0000 (09:40 -0700)]
Document orientation parameter of set_attach (#6473)
Paramat [Wed, 27 Sep 2017 21:03:41 +0000 (22:03 +0100)]
Fix recent commit: std::max -> std::fmax for floats (#6469)
Fixes commit
a455297d297c0819a7eff89e51e5f01a5ac731c3
<cmath> header was already present in commit.
paramat [Sat, 23 Sep 2017 07:38:22 +0000 (08:38 +0100)]
Positional sound: Limit volume when closer than 1 node
Change OpenAL distance model from AL_INVERSE_DISTANCE to
AL_INVERSE_DISTANCE_CLAMPED to avoid excessive volume when very close
to the sound location, for example MTG doors, and MTG fire sounds which
are combined at an average position and often located in air nodes.
Because AL_REFERENCE_DISTANCE has been reduced to 1 node (the distance
under which gain is clamped), multiply volume by the same factor to keep
sound gains the same as before, since the gain is calculated as:
gain = (AL_REFERENCE_DISTANCE / distance)
sfan5 [Sat, 23 Sep 2017 15:05:55 +0000 (17:05 +0200)]
Fix blocks written by vmanip not being marked as modified
This bug can be triggered by e.g. calling minetest.place_schematic()
and stopping the server immediately afterwards.
DTA7 [Thu, 21 Sep 2017 19:52:52 +0000 (21:52 +0200)]
Set placer to nil instead of a non-functional one in item_OnPlace (#6449)
* Set placer to nil instead of a non-functional one
This requires nil checks in core.rotate_node and core.rotate_and_place.
paramat [Mon, 18 Sep 2017 04:08:56 +0000 (05:08 +0100)]
Leveled nodebox: Change levels from 1/63rds to 1/64ths
Add missing documentation of leveled nodebox to lua_api.txt, plus
a little cleaning up nearby.
tenplus1 [Sat, 16 Sep 2017 20:39:38 +0000 (21:39 +0100)]
Fix Rotate Node Placement (#6424)
This properly checks for creative mode or privilege when using fixed rotate_node() function.
sfan5 [Fri, 15 Sep 2017 10:19:01 +0000 (12:19 +0200)]
ServerEnv: Clean up object lifecycle handling (#6414)
* ServerEnv: Clean up object lifecycle handling
sfan5 [Mon, 11 Sep 2017 14:25:20 +0000 (16:25 +0200)]
Fix core.wrap_text and make its behaviour consistent with the docs
Code based on initial implementation by @dsohler.
rubenwardy [Sat, 19 Aug 2017 18:43:02 +0000 (19:43 +0100)]
Fix empty legacy meta being persisted
Nathanaël Courant [Sun, 27 Aug 2017 17:06:40 +0000 (19:06 +0200)]
Statbars: fix incorrect half-images in non-standard orientations (fixes #6198)
Paramat [Sat, 26 Aug 2017 06:45:09 +0000 (07:45 +0100)]
Android stepheight: Only increase if 'touching ground' (#6313)
Dániel Juhász [Thu, 24 Aug 2017 06:31:33 +0000 (06:31 +0000)]
Fix Android node selection distance (#6187)
Loïc Blot [Mon, 21 Aug 2017 14:07:39 +0000 (16:07 +0200)]
serialize: use a temporary for SerializeException Exception must always use temporary instead of global copied exception instances, it's not recommended and should have undefined issues
Loic Blot [Thu, 17 Aug 2017 17:15:12 +0000 (19:15 +0200)]
Loïc Blot [Wed, 16 Aug 2017 21:48:29 +0000 (23:48 +0200)]
ClientInterface: add a function to verify (correctly) if user limit was reached (#6258)
* ClientInterface: add a function to verify (correctly) if user limit was reached
CS_HelloSent is a better indicator of active slots than CS_Created, which are session objects created after init packet reception
Switch existing checks to ClientInterface::isUserLimitReached()
Use range-based for loop for getClientIds() used function too
This will fix #6254 (not the memory overhead if init is flooded)
Dániel Juhász [Sat, 24 Jun 2017 16:58:01 +0000 (18:58 +0200)]
Make dropped items colorable
SmallJoker [Thu, 10 Aug 2017 07:41:56 +0000 (09:41 +0200)]
Trigger on_rightclick regardless on the formspec meta field
Document behaviour for older clients.
Fixer [Wed, 9 Aug 2017 10:50:16 +0000 (13:50 +0300)]
Full viewing range key message clarified
To make it sound less confusing to players
Jens Rottmann [Fri, 4 Aug 2017 23:42:39 +0000 (01:42 +0200)]
Add tiny Y offset in collisionMoveSimple() to tweak performance
Another small general problem: the player is always standing exactly on the
bondary between 2 nodes e.g. Y=1.5 is exactly between nodes Y=1 and Y=2.
floatToInt() and myround() will round +/-n.5 always 'outwards' to +/-(n+1),
which means they behave differently depending on where you are: they round
upwards above sea level and downwards when underground. This inconsistency
comes from the way the coordinates are calculated, independent of the
specific C++ code.
The result is a tiny bit of lost performance when moving underground,
because 1 node level more than necessary is checked for collisions. This can
be amended by adding a tiny offset to minpos_f.Y, like @paramat suggested.
This is not an elegant solution, but still better than wasting CPU.
Jens Rottmann [Fri, 4 Aug 2017 19:48:32 +0000 (21:48 +0200)]
Fix player coordinate rounding in collisionMoveSimple() (#6197)
To determine the area (nodes) where a player movement took place
collisionMoveSimple() first took the old/new player coordinates and rounded
them to integers, then added the player character's collision box and
implicitely rounded the result. This has 2 problems:
Rounding the position and the box seperately, then adding the resulting
integers means you get twice the rounding error. And implicit rounding
always rounds towards 0.0, unlike floatToInt(), which rounds towards the
closest integer.
Previous (simplified) behavior: round(pos)+(int)box, for example player at
Y=0.9, body is 1.75m high: round(0.9)+(int)1.75 = 1+1 = 2.
==> A character's height of 1.75m always got rounded down to 1m, its width
of +/-0.3 even became 0.
Fixed by adding the floats first, then rounding properly: round(pos+box) =
round(0.9+1.75) = round(2.65) = 3.
Juozas Pocius [Wed, 2 Aug 2017 13:40:38 +0000 (16:40 +0300)]
Fix crash when using --go in command line
SmallJoker [Sat, 29 Jul 2017 17:01:14 +0000 (19:01 +0200)]
Noise: Prevent unittest crash caused by division by zero
SmallJoker [Sat, 1 Apr 2017 18:38:14 +0000 (20:38 +0200)]
Sneak: Stripped down version
Fix taking damage caused by sneaking over a nodebox gap.
Fix strange behaviour on stair nodeboxes.
Enable jumping from node edges while sneaking.
Enable movement around corners while sneaking on a 1-node-high groove in a wall.
stujones11 [Sat, 1 Jul 2017 16:01:07 +0000 (17:01 +0100)]
Include TILE_MATERIAL_OPAQUE in shaders header (#6086)
stujones11 [Wed, 7 Jun 2017 17:52:38 +0000 (18:52 +0100)]
Tile material: Add 'TILE_MATERIAL_OPAQUE', use for drawtype 'NDT_NORMAL'
Prevents normal drawtype nodes having transparency.
Avoids clients cheating by using 'x-ray' texture packs with transparent textures.
paramat [Wed, 28 Jun 2017 08:35:46 +0000 (09:35 +0100)]
Mgv7: Fix undefined 'float_mount_height'
Commit
cad10ce3b747b721fd63784915e05f12bc488128 altered the parameter
'float_mount_height' but was missing the necessary line in the constructor
to get the altered value from 'params'.
Fixes 3D floatland terrain generating everywhere.
Jesse McDonald [Tue, 27 Jun 2017 10:34:11 +0000 (05:34 -0500)]
Fix for empty key/value when reading item string with wear but no metadata (#6058)
paramat [Sun, 25 Jun 2017 03:45:40 +0000 (04:45 +0100)]
Mgv7: Clean up divide-by-zero fix
paramat [Fri, 23 Jun 2017 20:49:26 +0000 (21:49 +0100)]
Mgv7: Avoid divide-by-zero errors
Some settings of paramters can cause mgv7 variables to be -inf, nan or -nan.
This can cause massive vertical columns of water to appear above sea level.
Dániel Juhász [Wed, 21 Jun 2017 08:47:31 +0000 (08:47 +0000)]
Fix render order of overlays (#6008)
* Fix render order of overlays
* Use C++11 loops
* Fix time_t
Ezhh [Wed, 21 Jun 2017 05:50:57 +0000 (06:50 +0100)]
Fix console resize issue when maximising game window (#6023)
Zeno- [Tue, 20 Jun 2017 10:36:58 +0000 (20:36 +1000)]
Fix console not being properly resized after window size changed (#6020)
Dániel Juhász [Tue, 20 Jun 2017 09:19:56 +0000 (09:19 +0000)]
Automatic item and node colorization (#5640)
* Automatic item and node colorization
Now nodes with a palette yield colored item stacks, and colored items
place colored nodes by default. The client predicts the colorization.
* Backwards compatibility
* Use nil
* Style fixes
* Fix code style
* Document changes
SmallJoker [Mon, 19 Jun 2017 14:30:26 +0000 (16:30 +0200)]
find_nodes_in_area: Extend maximal count to U32_MAX (#5277)
Extend documentation, limit area volume
Remove u16 count limitation
* Prevent integer overflow, replace minp/maxp with pos1/pos2
Loïc Blot [Mon, 19 Jun 2017 12:10:30 +0000 (14:10 +0200)]
Verify HudSetParams input when hotbar textures are set (#6013)
* Verify HudSetParams input when hotbar textures are set
This fix #6011
paramat [Sun, 4 Jun 2017 21:28:32 +0000 (22:28 +0100)]
(Re)spawn players within 'mapgen_limit'
Previously, findSpawnPos() did not take the 'mapgen_limit' setting into account,
a small limit often resulted in a spawn out in the void.
Use the recently added 'calcMapgenEdges()' to get max spawn range through a new
mapgenParams function 'getSpawnRangeMax()'.
Previously, when a player respawned into a world, 'objectpos_over_limit()' was
used as a check, which was inaccurate.
Use the recently added 'saoPosOverLimit()' to get exact mapgen edges.
Also fix default value of 'm_sao_limit_min'.
red-001 [Sat, 10 Jun 2017 11:49:44 +0000 (12:49 +0100)]
Add a server-sided way to remove color codes from incoming chat messages (#5948)
These code be generated by CSM, a modded client or just copy and pasted by the player.
Changes
- Update configuration example and setting translation file.
- Remove colour codes before logging chat.
- Add setting to remove colour codes before processing the chat.
DS [Sat, 10 Jun 2017 11:49:28 +0000 (13:49 +0200)]
fix an example in lua_api (#5604)
red-001 [Fri, 9 Jun 2017 19:39:25 +0000 (20:39 +0100)]
Fix sending color codes to clients that don't support them. (#5950)
Also remove `disable_escape_sequences` since it's not needed anymore.
DS [Wed, 7 Jun 2017 17:11:28 +0000 (19:11 +0200)]
make ret variable in /builtin/mainmenu/tab_credits.lua local (#5942)
red-001 [Tue, 6 Jun 2017 15:02:44 +0000 (16:02 +0100)]
Fix typos/mistakes in the documentation for colour related functions. (#5936)
ShadowNinja [Sat, 3 Jun 2017 21:59:17 +0000 (17:59 -0400)]
Fix segmentation fault with tool capabilities (#5899)
sfan5 [Mon, 20 Nov 2017 18:27:06 +0000 (19:27 +0100)]
rubenwardy [Sat, 9 Sep 2017 19:33:28 +0000 (20:33 +0100)]
Fix branch being labelled as 0.4.17 instead of 0.4.17-dev
You should use tags instead of this branch to track the latest release
Loïc Blot [Sun, 20 Aug 2017 15:20:11 +0000 (17:20 +0200)]
New version scheme (#6292)
* Version changes: current dev version is now 0.4.17
* This change permit to have multi branches with various versions
* Dev version is 0.4.17-dev and next release will be 0.4.17
ShadowNinja [Sat, 3 Jun 2017 18:55:10 +0000 (14:55 -0400)]
Merge 0.4.16 into stable-0.4
ShadowNinja [Sat, 3 Jun 2017 18:42:10 +0000 (14:42 -0400)]
Bump version to 0.4.16
ShadowNinja [Sat, 3 Jun 2017 18:39:49 +0000 (14:39 -0400)]
Update remove_player documentation
This function only removes player meta data,
not player authentication data.
rubenwardy [Sun, 28 May 2017 19:37:44 +0000 (20:37 +0100)]
Update credits
The following algorithm was used when selecting contributors:
* Every non-trivial contributor from the current release,
Non-trivial meaning more than X non-trivial commits, not counting documentation/translation changes
* The top Y contributors from the last 4 years.
* Previous contributor means no contributions since a few months before the last release.
In the future this should be automated
pandaro [Sat, 3 Jun 2017 10:10:53 +0000 (10:10 +0000)]
Translated using Weblate (Italian)
Currently translated at 77.6% (795 of 1024 strings)
Лазар Вукановић [Fri, 2 Jun 2017 14:47:17 +0000 (14:47 +0000)]
Translated using Weblate (Serbian (cyrillic))
Currently translated at 38.1% (391 of 1024 strings)
Mateusz Mendel [Wed, 31 May 2017 19:57:58 +0000 (19:57 +0000)]
Translated using Weblate (Polish)
Currently translated at 61.3% (628 of 1024 strings)