Commit Graph

6683 Commits (master)

Author SHA1 Message Date
Wuzzy 4fca601e0c
Add get_server_max_lag() (#11671) 2021-10-05 15:35:55 +03:00
x2048 982e03f60d
Improvements to colored shadows (#11516) 2021-10-01 16:21:53 +02:00
Wuzzy 21113ad410
Split liquid_viscosity to liquid_viscosity and move_resistance (#10810) 2021-10-01 16:21:24 +02:00
x2048 f5040707fe
Order drawlist by distance to the camera when rendering (#11651) 2021-09-27 17:46:08 +02:00
SmallJoker d51d0f3a5a
Various code improvements
* Camera: Fix division by 0 after view bobbing
* Remove ignored constness
* Connection: Improve window size range limits
2021-09-27 17:45:44 +02:00
TheBrokenRail 3dcf9e963e
Touch UI support for desktop builds (#10729) 2021-09-26 18:04:09 +02:00
sfan5 9f85862b7c Fix "Could not create ITexture, texture needs to have a non-empty name" warning 2021-09-22 18:43:40 +02:00
nia 2628316842
Fix src/util/string.cpp on NetBSD
- iconv() prototype changed from traditional Unix defintion
  to POSIX definition in 9.99.x.
- wchar_t is not a valid character set for iconv. Share code
  with Android for using UTF-32.
2021-09-19 20:23:52 +02:00
DS e79d6154fc
Fix client-side performance of chat UI (#11612) 2021-09-19 20:23:35 +02:00
Lars Müller 40ea4ddef1
Fix HUD multiline text alignment (#10795) 2021-09-19 20:23:22 +02:00
sfan5 e0529da5c8 Fix trivial typos 2021-09-19 13:54:20 +02:00
sfan5 ad076ede85 Add preprocessor check for weird (incorrect) build configurations 2021-09-19 13:53:44 +02:00
sfan5 fd8a8501bc
Shave off buffer copies in networking code (#11607) 2021-09-17 18:14:25 +02:00
sfan5 ea250ff5c5 Fix GLES2 discard behaviour (texture transparency) 2021-09-17 18:13:50 +02:00
HybridDog d1e0f73b77 Hide Wself-assign-overloaded and Wself-move unittest compilation warnings
The warnings occured with the clang compiler
2021-09-17 18:13:04 +02:00
ROllerozxa 6fedee16f0
Readd TGA to the list of valid texture formats. (#11598) 2021-09-15 11:12:24 +01:00
Lars Müller 719a12ecac
Chop game background in mainmenu (#10796) 2021-09-14 20:46:02 +02:00
sfan5 4feb799b7e Add Windows-specific CreateTempFile() implementation
Once again MSVC is the only compiler not supporting basic POSIX functionality.
2021-09-14 20:45:41 +02:00
sfan5 b480a3e9fd Fix broken handling of NodemetaChanged packets
fixes #11610
2021-09-12 14:42:01 +02:00
sfan5 75bf9b75ca
Make sure relevant std::stringstreams are set to binary 2021-09-11 21:06:57 +02:00
sfan5 766e885a1b
Clean up/improve some scriptapi error handling code 2021-09-10 23:16:46 +02:00
Jude Melton-Houghton 7423c4c11e
Send to clients node metadata that changed to become empty (#11597) 2021-09-10 23:16:34 +02:00
sfan5 bbfae0cc67
Dynamic_Add_Media v2 (#11550) 2021-09-09 16:51:35 +02:00
NeroBurner 7f3401412e
Fix movement in random_input mode (#11592) 2021-09-05 19:58:50 +02:00
sfan5 31d2b9edcd Don't look for zlib and zstd manually on Windows 2021-09-01 22:20:38 +02:00
lhofhansl d1624a5521
Switch MapBlock compression to zstd (#10788)
* Add zstd support.
* Rearrange serialization order
* Compress entire mapblock

Co-authored-by: sfan5 <sfan5@live.de>
2021-08-31 17:32:31 -07:00
pecksin 040aed37ab Remove closing paren as weblink delimiter 2021-08-29 19:30:33 +02:00
sfan5 6a1424f2b1
Async-related script cleanups 2021-08-28 12:15:12 +02:00
savilli 3f1adb49ae
Remove redundant on_dieplayer calls 2021-08-28 12:14:16 +02:00
NeroBurner 1d69a23ba4
Joystick sensitivity for player movement (#11262)
This commit deprecates the forward, backward, left, and right binary
inputs currently used for player movement in the PlayerControl struct.
In their place, it adds the movement_speed and movement_direction
values, which represents the player movement is a polar coordinate
system.

movement_speed is a scalar from 0.0 to 1.0. movement_direction is
an angle from 0 to +-Pi:

	       FWD
	        0
	        _
	 LFT   / \   RGT
	-Pi/2 |   | +Pi/2
	       \_/
	       +-Pi
	       BCK

Boolean movement bits will still be set for server telegrams and
Lua script invocations to provide full backward compatibility.
When generating these values from an analog input, a direction is
considered active when it is 22.5 degrees away from either
orthogonal axis.

Co-authored-by: Markus Koch <markus@notsyncing.net>
Co-authored-by: sfan5 <sfan5@live.de>
2021-08-27 20:24:24 +02:00
Wuzzy 63e8224636
Fix 6th line of infotext being cut off in half (#11456) 2021-08-23 22:13:17 +02:00
SmallJoker eea488ed75
Inventory: Fix rare out-of-bounds access
Co-authored-by: Thomas--S <info@thomas-stangl.de>
2021-08-23 14:10:17 +02:00
DS dad87a360b
Use utf-8 for the Irrlicht clipboard (#11538) 2021-08-23 14:09:50 +02:00
SmallJoker 0c1e9603db
HUD: Reject and warn on invalid stat types (#11548)
This comes into play on older servers which do not know the "stat" type.
Warnings are only logged once to avoid spam within globalstep callbacks
2021-08-21 20:04:04 +02:00
Wuzzy 6fd8aede48
Show status message when changing block bounds (#11556) 2021-08-21 13:53:49 +02:00
sfan5 e7b05beb7d
Validate staticdata and object property length limits (#11511)
Some games provide users with enough freedom to create items
with metadata longer than 64KB, preventing this from causing
issues is on them but we'll still do the minimum not to abort
the server if this happens.
2021-08-19 20:14:22 +02:00
Wuzzy 1320c51d8e
Fix scaled world-aligned textures being aligned inconsistently for non-normal drawtypes 2021-08-19 20:14:04 +02:00
rubenwardy 24b66dede0
Add fwgettext util function 2021-08-19 20:13:25 +02:00
SmallJoker 3b842a7e02 Fix inconsistent integer comparison warnings 2021-08-17 20:00:47 +02:00
Lean Rada 328d949225
Start sprite animation at the beginning (#11509)
When setting a sprite animation, do not keep the last animation's frame number. Setting a new animation should start the animation at the start of the new animation.
2021-08-16 17:56:38 +02:00
sfan5 4419e311a9 Cap iterations of imageCleanTransparent sanely
fixes #11513 performance regression with 256x textures
2021-08-16 17:56:11 +02:00
Treer 963fbd1572
Fix access violation in create_schematic() (#11534)
fixes #11533

Schematics saved from y locations greater than 0 would cause an access violation if layer probabilities were specified
2021-08-16 17:55:35 +02:00
SmallJoker b3b075ea02 Fix segfault caused by shadow map on exit 2021-08-12 20:08:39 +02:00
x2048 442e48b84f
Move updating shadows outside of RenderingCore::drawAll. (#11491)
Fixes indirect rendering modes such as some 3D modes mentioned in #11437 and undersampled rendering.
Does not fully fix anaglyph 3d mode.
2021-08-12 20:07:09 +02:00
DS 0709946c75
Fix a segfault caused by wrong textdomain lines in translation files (#11530)
* The problem were lines like these:
  "# textdomain:"
* str_split does not add an empty last part if there is a delimiter
  at the end, but this was probably assumed here.
2021-08-12 20:06:18 +02:00
DS 1ab29f1716
Fix GUIEditBoxWithScrollBar using a smaller steps than intlGUIEditBox (#11519) 2021-08-08 18:59:45 +02:00
Pevernow c6eddb0bae
Gettext support on Android (#11435)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: =?UTF-8?q?Olivier=20Samyn=20=F0=9F=8E=BB?= <code@oleastre.be>
2021-08-08 18:59:07 +02:00
SmallJoker 4a3728d828 OpenAL: Free buffers on quit 2021-08-03 20:29:55 +02:00
SmallJoker 32cb9d0828
Mods: Combine mod loading checks and deprection logging (#11503)
This limits the logged deprecation messages to the mods that are loaded
Unifies the mod naming convention check for CSM & SSM
2021-07-31 19:54:52 +02:00
Wuzzy e7cd4cfa25
Fix /emergeblocks crashing in debug builds (#11461)
The reason for the bug was an u16 overflow, thus failing the assert. This only happened in Debug build but not in Release builds.
2021-07-31 19:54:40 +02:00
hecks 1e2b638881 Remove unsupported formats from the media enumerator 2021-07-29 22:42:47 +02:00
hecktest 28c98f9fa5 Remove unsupported extensions from list in tile.cpp 2021-07-29 21:47:08 +02:00
hecks 80d12dbedb
Add a simple PNG image encoder with Lua API (#11485)
* Add a simple PNG image encoder with Lua API
Add ColorSpec to RGBA converter
Make a safety wrapper for the encoder
Create devtest examples

Co-authored-by: hecktest <>
Co-authored-by: sfan5 <sfan5@live.de>
2021-07-29 05:10:10 +02:00
sfan5 6e8aebf432
Add bold, italic and monospace font styling for HUD text elements (#11478)
Co-authored-by: Elias Fleckenstein <eliasfleckenstein@web.de>
2021-07-27 19:11:46 +02:00
JosiahWI cf136914cf
Take advantage of IrrlichtMt CMake target (#11287)
With the CMake changes to IrrlichtMt, it's now possible to use a target for IrrlichtMt.
Besides greatly improving the ease of setting up IrrlichtMt for users building the client, it removes the need for Minetest's CMake to include transitive dependencies such as image libraries, cleaning it up a tiny bit. The PR works by finding the IrrlichtMt package and linking to the target it provides. If the package isn't found and it isn't building the client, it will still fall back to using just the headers of old Irrlicht or IrrlichtMt.
2021-07-27 19:11:27 +02:00
x2048 bf3acbf388
Distribute shadow map update over multiple frames to reduce stutter (#11422)
Reduces stutter and freezes when playing.

 * Maintains double SM and SM Color textures
 * Light frustum update triggers incremental generation of shadow map into secondary 'future' textures.
 * Every incremental update renders a portion of the shadow draw list (split equally).
 * After defined number of frames (currently, 4), 'future' and 'current' textures are swapped, and DirectionalLight 'commits' the new frustum to use when rendering shadows on screen.

Co-authored-by: sfan5 <sfan5@live.de>
2021-07-25 12:36:23 +02:00
hecks a049e8267f
Remove unused ITextSceneNode header (#11476)
Co-authored-by: hecktest <>
2021-07-22 00:55:20 +02:00
hecks 850293bae6
Remove unused header includes 2021-07-21 22:07:13 +02:00
sfan5 6caed7073c Fix no locales being generated when APPLY_LOCALE_BLACKLIST=0
Also enable `ky` which appears to work fine.
2021-07-20 17:58:47 +02:00
SmallJoker 40bee27e56 CSM: Do not index files within hidden directories
CSM would previously scan for files within .git or .svn directories, and also special files such as .gitignore
2021-07-17 16:44:06 +02:00
Wuzzy f4d8cc0f0b
Add wallmounted support for plantlike and plantlike_rooted nodes (#11379) 2021-07-15 21:19:59 +02:00
Wuzzy b7b5aad027
Fix revoke debug privs not reliably turn off stuff (#11409) 2021-07-12 20:32:18 +02:00
sfan5 5c89a0e12a Fix build on Ubuntu 16.04 and macOS
Apparently the C++ standard library is supposed to provide
specializations of std::hash for enums (even in C++11)
but those don't always work for whatever reason.
2021-07-12 12:03:39 +02:00
x2048 effb5356ca
Avoid draw list and shadow map update in the same frame to reduce dtime jitter (#11393)
* Separate draw list and shadows update to reduce jitter

* Avoid draw list update and shadow update in the same frame

* Force-update shadows when camera offset changes
2021-07-11 10:57:29 -07:00
x2048 f5706d444b
Improve shadow rendering with non-default camera FOV (#11385)
* Adjust minimum filter radius for perspective

* Expand shadow frustum when camera FOV changes, reuse FOV distance adjustment from numeric.cpp

* Read shadow_soft_radius setting as float

* Use adaptive filter radius to accomodate for PSM distortion

* Adjust filter radius for texture resolution
2021-07-11 08:15:19 -07:00
hecks 1d25d1f7ad
Refactor video driver name retrieval (#11413)
Co-authored-by: hecktest <>
2021-07-11 09:50:34 +02:00
SmallJoker b93bbfde2c Script API: Fix segfault in remove_detached_inventory
when minetest.remove_detached_inventory is called on script init, the environment is yet not set up,
hence m_env is still nullptr until all scripts are loaded
2021-07-10 14:34:36 +02:00
Warr1024 52128ae11e
Add API for mods to hook liquid transformation events (#11405)
Add API for mods to hook liquid transformation events

Without this API, there is no reliable way for mods to be
notified when liquid transform modifies nodes and mods are
forced to poll for changes.  This allows mods to detect
changes to flowing liquid nodes and liquid renewal using
event-driven logic.
2021-07-09 09:08:40 -04:00
SmallJoker 062fd2190e
Auth API: Error when accessed prior to ServerEnv init (#11398) 2021-06-30 20:42:26 +02:00
hecks 827a7852e2
Remove unsupported video drivers (#11395)
This completely removes any mention of the software and D3D drivers from MT, preventing the user from accidentally attempting to use them. Users who need a software renderer should be asked to install Mesa drivers which offer superior fidelity and performance over the 'burningsvideo' driver.
2021-06-30 20:42:15 +02:00
SmallJoker f2fd443262
Inventory: Make addList() consistent (#11382)
Fixes list clearing for inv:set_list() using same size, since 2db6b07.
addList() now clears the list in all cases. Use setSize() to resize without clearing.
2021-06-30 20:39:38 +02:00
Wuzzy 63fc728a84
Require 'basic_debug' priv to view gameplay-relevant debug info, require 'debug' priv to view wireframe (#9315)
Fixes #7245.
2021-06-24 21:21:19 +03:00
Wuzzy 51bf4a6e26
Perform some quality assurance for translation strings (#11375) 2021-06-23 17:35:50 +01:00
sfan5 c60a146e22
Rework Settings to support arbitrary hierarchies (#11352) 2021-06-23 15:22:31 +02:00
SmallJoker a8b7c8ff38 Server: Ignore whitespace-only chat messages 2021-06-22 19:47:18 +02:00
SmallJoker 2db6b07de1
Inventory: show error on invalid list names (#11368) 2021-06-20 17:21:50 +02:00
sfence b10091be9b
Add min_y and max_y checks for Active Block Modifiers (ABM) (#11333)
This check can be used by ABM to reduce CPU usage.
2021-06-20 17:21:35 +02:00
pecksin 1805775f3d
Make chat web links clickable (#11092)
If enabled in minetest.conf, provides colored, clickable (middle-mouse or ctrl-left-mouse) weblinks in chat output, to open the OS' default web browser.
2021-06-20 17:20:24 +02:00
updatepo.sh cb5dd0dae4 Update minetest.conf.example and dummy translation file 2021-06-16 18:27:45 +02:00
sfan5 edf098db63 Drop --videomodes, fullscreen_bpp and high_precision_fpu settings
These have been pointless for a while.
2021-06-16 17:41:34 +02:00
Liso c47313db65
Shadow mapping render pass (#11244)
Co-authored-by: x2048 <codeforsmile@gmail.com>
2021-06-06 18:51:21 +02:00
DS 8f085e02a1
Add metatables to lua vectors (#11039)
Add backwards-compatible metatable functions for vectors.
2021-06-04 21:22:33 +02:00
sfan5 e15cae9fa0 fontengine: Fix crash loading PNG/XML fonts from paths without dot
fixes #11096
2021-06-01 19:47:41 +02:00
SmallJoker c9144ae5e2
Add core.compare_block_status function (#11247)
Makes it possible to check the status of the mapblock in a future-extensible way.
2021-05-30 20:24:12 +02:00
Lars Müller 89f3991351
Fix base64 validation and add unittests (#10515)
Implement proper padding character checks
2021-05-30 20:23:12 +02:00
sfan5 f30dcdb504 Fix procession ordering issue in content_cao 2021-05-30 11:40:14 +02:00
sfan5 758e3aa1ca Fix background color of formspec text fields 2021-05-30 11:40:14 +02:00
sfan5 a0047d6edc script: Replace calls to depreated luaL_openlib 2021-05-30 11:40:14 +02:00
sfan5 a12017c564 Provide exact error message if postgres connection string missing 2021-05-30 11:40:14 +02:00
SmallJoker 5bf72468f3
UnitSAO: Prevent circular attachments 2021-05-29 11:44:48 +02:00
Wuzzy ff48619a85 Fix cloud fog being broken for high clouds 2021-05-29 11:44:31 +02:00
savilli 673c29f7ea
Fix client crash on when con::PeerNotFoundException is thrown (#11286) 2021-05-24 19:40:35 +02:00
SmallJoker 93f43c890b GUIEditBox: Allow selecting and copying read-only texts 2021-05-22 14:39:41 +02:00
sfan5 b56a028d6b Fix curl_timeout being ignored for Lua HTTP fetches 2021-05-17 17:12:30 +02:00
Dmitry Marakasov 53dca4f95f
Use --image-base instead of -Ttext-segment for lld linker on FreeBSD (#9367) (#11263) 2021-05-15 10:15:03 +02:00
sfan5 2443f1e235 Fix overlays for 2D-drawn items
fixes #11248
2021-05-08 19:44:43 +02:00
lhofhansl 7c2826cbc0
Fix build for newer versions of GCC (#11246) 2021-05-06 19:24:30 +02:00
Loic Blot 225d4541ff fix: extractZipFile is not part of Client but more generic.
This solve a crash from mainmenu while extracting the zip
2021-05-06 16:01:52 +02:00
sfan5 08f1a7fbed Use Irrlicht functions to query npot texture support 2021-05-05 22:49:44 +02:00
Loic Blot de85bc9227 fix: some code tidy about includes & irr namespaces 2021-05-03 19:49:19 +02:00
Loic Blot 48d5abd5be refacto: remove get_gui_env & draw_load_screen from RenderingEngine singleton 2021-05-03 19:49:19 +02:00
Loic Blot a93712458b fix: don't use RenderingEngine singleton when it's possible 2021-05-03 19:49:19 +02:00
Loic Blot 5a02c376ea refacto: RenderingEngine::get_scene_manager() is now not callable from singleton
This permits to make evidence that we have some bad object passing on various code parts. I fixed majority of them to reduce the scope of passed objects

Unfortunately, for some edge cases i should have to expose ISceneManager from client, this should be fixed in the future when our POO will be cleaner client side (we have a mix of rendering and processing in majority of the client objects, it works but it's not clean)
2021-05-03 19:49:19 +02:00
Loic Blot ccdd886e27 refacto: Hud: make driver, client, player, inventory, tsrc private & drop unused guienv
also fix c_content.h, on client it includes the src/client/hud.h instead of src/hud.h, which leads to wrong file dependency on the lua stack
2021-05-03 19:49:19 +02:00
Loic Blot a47a00228b refacto: drop unused Hud::smgr 2021-05-03 19:49:19 +02:00
Loic Blot 809e68fdc0 refacto: don't use RenderingEngine singleton on CAO
* we don't need on CAO side more than SceneManager, and temporary. Pass only required SceneManager as a parameter to build CAO and add them to the current scene
* Use temporary the RenderingEngine singleton from ClientEnvironment, waitfor for better solution
* Make ClientActiveObject::addToScene virtual function mandatory to be defined by children to ensure we don't forget to properly define it
2021-05-03 19:49:19 +02:00
Loic Blot 1bc855646e refacto: protect some RenderingEngine::get_scene_manager
* protect it from Camera, Sky, ClientMap object calls
* rename Game::sky to Game::m_sky
2021-05-03 19:49:19 +02:00
Loic Blot 258101a910 refacto: RenderingEngine is now better hidden
* No more access to the singleton instance from everywhere (RenderingEngine::get_instance dropped)
* RenderingEngine::get_timer_time is now non static
* RenderingEngine::draw_menu_scene is now non static
* RenderingEngine::draw_scene is now non static
* RenderingEngine::{initialize,finalize} are now non static
* RenderingEngine::run is now non static
* RenderingEngine::getWindowSize now have a static helper. It was mandatory to hide the global get_instance access
2021-05-03 19:49:19 +02:00
Loic Blot 74125a74d3 refacto: hide mesh_cache inside the rendering engine
This permit cleaner access to meshCache and ensure we don't access to it from all the code
2021-05-03 19:49:19 +02:00
Loic Blot e0716384d6 refacto: add RenderingEngine::cleanupMeshCache
This permits to prevent client to own the mesh cache cleanup logic. It's better in RenderingEngine
2021-05-03 19:49:19 +02:00
Loic Blot e34d28af9f refacto: rendering engine singleton removal step 1 (filesystem)
Make the RenderingEngine filesystem member non accessible from everywhere

This permits also to determine that some lua code has directly a logic to extract zip file. Move this logic inside client, it's not the lua stack role to perform a such complex operation

Found also another irrlicht <1.8 compat code to remove
2021-05-03 19:49:19 +02:00
Loic Blot bc1888ff21 fix: drop old irrlicht <1.8 compat on Client::loadMedia 2021-05-03 19:49:19 +02:00
Vincent Robinson 074e6a67de
Add `minetest.colorspec_to_colorstring` (#10425) 2021-04-23 21:37:24 +02:00
sfan5 3e2145d662 Fix two CMake build issues
* PostgreSQL fallback code missed the includes (closes #11219)
* build failed when Freetype enabled but not found
2021-04-21 20:26:43 +02:00
sfan5 a24899bf2d
Look for PostgreSQL library properly and fix CI 2021-04-20 19:50:34 +02:00
sfan5 1da73418cd
Enable cleanTransparent filter for mipmapping and improve its' algorithm (#11145) 2021-04-20 19:50:19 +02:00
Wuzzy 90a7bd6a0a
Put torch/signlike node on floor if no paramtype2 (#11074) 2021-04-20 19:50:03 +02:00
Seth Traverse 16e5b39e1d
Add a key to toggle map block bounds (#11172)
It's often useful to know where the map block boundaries are for doing server admin work and the like.
Adds three modes: single mapblock, range of 5, and disabled.
2021-04-20 19:23:31 +02:00
sfan5 0077982fb7
GLES fixes (#11205)
* Consistently set float precision for GLES

* Enable DPI scaling on Windows+GLES
2021-04-18 16:07:13 +02:00
sfan5 623f0a8613 Isolate library tables between sandbox and insecure env 2021-04-18 16:06:42 +02:00
sfan5 52c0384bd1 Fix ignored OpenGLES2 include path and cmake warning 2021-04-16 23:39:16 +02:00
SmallJoker bbe120308f
Attachments: Avoid data loss caused by set_attach() in callbacks (#11181) 2021-04-13 20:02:18 +02:00
sfan5 4d0fef8ae8
Buildbot changes to allow out-of-tree builds (#11180)
* Do proper out-of-tree builds with buildbot
* Don't write to bin/ for cross builds
     * This allows safely building multiple builds from the same source dir, e.g. with the buildbot.
* Disable Gettext (by default) and Freetype (entirely) for server builds
2021-04-11 17:10:06 +02:00
Wuzzy 4b8209d9a4
Modifying fall damage via armor group (#11080)
Adds a new fall_damage_add_percent armor group which influences the fall damage in addition to the existing node group.
2021-04-11 17:09:37 +02:00
sfan5 0abc1e98ed
Fix server favorites not saving when client/serverlist/ doesn't exist already (#11152) 2021-04-09 22:36:10 +02:00
Wuzzy e89e6c8380 Don't reseed stars when changing star count 2021-04-09 22:33:45 +02:00
yw05 85163b531f
Make edit boxes respond to string input (IME) (#11156)
Make edit boxes respond to string input events (introduced in minetest/irrlicht#23) that are usually triggered by entering text with an IME.
2021-04-05 15:56:29 +02:00
sfan5 19c283546c Don't apply connection timeout limit to locally hosted servers
fixes #11085
2021-04-05 15:21:43 +02:00
SmallJoker c11208c4b5
Game: Scale damage flash to max HP
The flash intensity is calculated proportionally to the maximal HP.
2021-04-05 13:38:50 +02:00
sfan5 f0bad0e2ba
Reserve vectors before pushing and other code quality changes (#11161) 2021-04-05 13:38:31 +02:00
sfan5 024d47e0d3
CGUITTFont optimizations (#11136) 2021-04-02 00:20:16 +02:00
sfan5 34888a914e
Sort out cURL timeouts and increase default 2021-04-02 00:19:39 +02:00
sfan5 1e4913cd76
Irrlicht support code maintenance 2021-03-31 13:15:47 +02:00
sfan5 0d90ed6d92
Draw items as 2D images (instead of meshes) when possible 2021-03-30 21:50:39 +02:00
Lars Müller 88d1fcfe23
Block & report player self-interaction (#11137) 2021-03-30 21:49:50 +02:00
SmallJoker f4118a4fde
Consistent title bar + render information in mainmenu (#10764) 2021-03-30 21:49:15 +02:00
Wuzzy 6c9be39db0
Fix wield image of plantlike_rooted (#11067) 2021-03-30 00:27:46 +02:00
Vitaliy 3b78a22371
Degrotate support for mesh nodes (#7840) 2021-03-30 00:25:11 +02:00
sfan5 8d89f5f0cc
Replace fallback font nonsense with automatic per-glyph fallback (#11084) 2021-03-29 19:55:24 +02:00
Loic Blot 298bb3d8f7 Drop irrUString from MT, it's owned by irrlicht now 2021-03-26 20:58:45 +01:00
Desour 437d011968 Fix attached-to-object sounds having a higher reference distance 2021-03-23 15:43:40 +01:00
sfan5 2da1eee394
Fix broken `BiomeGen` abstraction (#11107) 2021-03-23 15:43:26 +01:00
Jean-Patrick Guerrero c9eba8440d
Fix segfault for model[] without animation speed 2021-03-21 23:23:30 +01:00
Vitaliy 44ed05ddf0
Restore minimal normal texture support (for minimap shading) 2021-03-21 23:22:22 +01:00
sfan5 531e7ef8eb Serialize tool capabilities JSON without whitespace
fixes #11087
2021-03-20 22:06:17 +01:00
SmallJoker 05719913ac
Schematic: Properly deal with before/after node resolving and document (#11011)
This fixes an out-of-bounds index access when the node resolver was already applied to the schematic (i.e. biome decoration).
Also improves the handling of the two cases: prior node resolving (m_nodenames), and after node resolving (manual lookup)
2021-03-20 13:02:15 +01:00
Elias Fleckenstein 492110a640
Check for duplicate login in TOSERVER_INIT handler (#11017)
i.e. checks for duplicate logins before sending all media data to the client.
2021-03-19 21:45:29 +01:00
Elias Åström 59a1b53d67
Scale mouse/joystick sensitivity depending on FOV (#11007) 2021-03-19 21:43:01 +01:00
sfan5 96d4df995c
Drop old text input workarounds (#11089)
* Drop unused intlGUIEditBox

* Drop unnecessary Linux text input workarounds
2021-03-19 18:44:32 +01:00
Jean-Patrick Guerrero 285ba74723
GUIScene: Clear depth buffer + replace deprecated clearZBuffer calls 2021-03-16 23:28:16 +01:00
Jean-Patrick Guerrero 66b5c08664 Fix deprecated calls with Irrlicht 1.9 2021-03-16 23:27:15 +01:00
Wuzzy 62e3593944 Tweak duration_to_string formatting 2021-03-16 18:37:46 +01:00
sfan5 051bc9e662 Enable Irrlicht debug logging with --trace 2021-03-12 20:56:02 +01:00
sfan5 1bc85a47cb Avoid unnecessary copies during media/mesh loading 2021-03-12 20:56:02 +01:00
sfan5 cff35cf0b3 Handle mesh load failure without crashing 2021-03-12 20:56:02 +01:00
sfan5 bb1c4badfb Clean up cmake DLL installation and other minor things 2021-03-12 20:55:51 +01:00
sfan5 91c9313c87 Switch Irrlicht dependency to our own fork
-> https://github.com/minetest/irrlicht
2021-03-09 21:53:17 +01:00
sfan5 3579dd2186 Restore Irrlicht 1.9 support 2021-03-09 21:53:17 +01:00
sfan5 bf8fb2672e
Use place_param2 client-side for item appearance & prediction (#11024) 2021-03-09 00:56:53 +01:00
SmallJoker 176f5866cb Protect dropping from far node inventories
Also changes if/if to switch/case
2021-03-07 17:18:02 +01:00
SmallJoker fc864029b9 Protect per-player detached inventory actions 2021-03-07 17:18:02 +01:00
sfan5 593d5f4465 Clean up ClientEvent hudadd/hudchange internals 2021-03-06 23:02:10 +01:00
sfan5 1c7b69f9cf Fix function override warnings in mg_ore.h 2021-03-06 14:21:08 +01:00
Vitaliy abb0c99a6c Pause animations while game is paused (#10658)
Pauses all mesh animations while game is paused.
2021-03-05 16:30:01 +01:00
Wuzzy cafad6ac03 Translate builtin (#10693)
This PR is the second attempt to translate builtin.
Server-sent translation files can be added to `builtin/locale/`, whereas client-side translations depend on gettext.
2021-03-05 16:29:48 +01:00
sfan5 ac8ac19169
Protect mg_name and mg_flags from being set by Lua (#11010) 2021-03-04 20:38:28 +01:00
SmallJoker 3a2f55bc19 Settings: Push groups in to_table as well 2021-03-01 12:14:41 +01:00
hecks 225e69063f
Keep mapblocks in memory if they're in range (#10714)
Some other minor parts of clientmap.cpp have been cleaned up along the way
2021-02-26 21:23:46 +01:00
savilli 3edb1ddb81
Fix hud_change and hud_remove after hud_add (#10997) 2021-02-26 21:21:20 +01:00
Lars Müller b5eda416ce
Slap u64 on everything time-y (#10984) 2021-02-24 12:05:17 +01:00
rubenwardy 9f6167fc3b
Deprecate not providing mod.conf 2021-02-24 11:47:50 +01:00
Wuzzy 827224635b
Use "Aux1" key name consistently everywhere 2021-02-24 11:45:30 +01:00
sfan5 9b59b2f75d Fix keyWasDown in input handler
This was changed 291a6b70d6 but should have never been done.
2021-02-23 19:41:38 +01:00
DS 4abe4b87b5
Allow overwriting media files of dependencies (#10752) 2021-02-23 19:39:15 +01:00
savilli 29681085b9
Fix wrong number of items in allow_metadata_inventory_put/take callbacks (#10990) 2021-02-23 19:36:55 +01:00
updatepo.sh e86fbf9c06 Update minetest.conf.example and dummy translation file 2021-02-23 19:03:34 +01:00
SmallJoker bce875fada Minimap: Fix default label translations 2021-02-22 20:25:16 +01:00
Lars Müller 051e4c2b00
Fix wrong reported item counts for inventory actions using Shift-Move (#10930) 2021-02-21 20:02:23 +01:00
Wuzzy e441ab9675
Fix world-aligned node rendering at bottom (#10742) 2021-02-19 19:45:36 +01:00
rubenwardy f85e9ab925
Add nametag background setting and object property (#10937) 2021-02-17 19:51:28 +00:00
rubenwardy a8f6befd39
Fix short_description fallback order (#10943) 2021-02-17 18:53:44 +00:00
SmallJoker 7832b6843e
Server-side authority for attached players (#10952)
The server must have authority about attachments. This commit ignores any player movement packets as long they're attached.
2021-02-15 20:41:19 +01:00
sfan5 f018737b06 Fix segfault with invalid texture strings and minimap enabled
closes #10949
2021-02-14 11:28:02 +01:00
SmallJoker 375bcd65c1
Send attachments instantly before set_pos (#10235) 2021-02-12 20:54:06 +01:00
Jean-Patrick Guerrero 1d64e6537c Pause menu: Fix segfault on u/down key input 2021-02-08 18:56:51 +01:00
Jean-Patrick Guerrero 6591597430 Fix animation_image support in scroll containers 2021-02-08 00:04:38 +00:00
rubenwardy 857dbcd572 Reduce empty translation error to infostream
Fixes #10905
2021-02-07 16:03:48 +00:00
rubenwardy 3a8c37181a
Use consistent temp folder path (#10892) 2021-02-07 15:27:24 +00:00
Vitaliy 4caf156be5
Rewrite touch event conversion (#10636) 2021-02-07 11:48:30 +01:00
Muhammad Rifqi Priyo Susanto 3ac07ad34d
Fall back to default when rendering mode (3d_mode) is set invalid (#10922) 2021-02-06 13:47:12 +01:00
rubenwardy fbb9ef3818
Reduce ore noise_parms error to deprecation warning (#10921)
Fixes #10914
2021-02-06 13:46:45 +01:00
sfan5 0f74c7a977 Fix double free caused by CGUITTFont code
This partially reverts commit 2072afb72b.
fixes #10920
2021-02-06 13:34:56 +01:00
SmallJoker d287da184c Server: properly delete ServerMap on interrupted startups
A static mod error (e.g. typo) would abort the initialization but never free ServerMap
2021-02-05 18:38:34 +01:00
k.h.lai 2072afb72b
Fix memory leak detected by address sanitizer (#10896) 2021-02-02 20:56:24 +01:00
Vincent Robinson f227e40180
Fix list spacing and size (again) (#10869) 2021-02-02 20:55:13 +01:00
sfan5 674d67f312 Encode high codepoints as surrogates to safely transport wchar_t over network
fixes #7643
2021-02-02 20:46:08 +01:00
sfan5 c834d2ab25 Drop wide/narrow conversion functions
The only valid usecase for these is interfacing with OS APIs
that want a locale/OS-specific multibyte encoding.
But they weren't used for that anywhere, instead UTF-8 is pretty
much assumed when it comes to that.
Since these are only a potential source of bugs and do not fulfil
their purpose at all, drop them entirely.
2021-02-02 20:46:08 +01:00
sfan5 5e392cf34f Refactor utf8_to_wide/wide_to_utf8 functions 2021-02-02 20:46:08 +01:00
SmallJoker 7ebd5da9cd Server GotBlocks(): Lock clients to avoid multithreading issues 2021-02-02 19:10:35 +01:00
sfan5 40ad976753 Revise dynamic_add_media API to better accomodate future changes 2021-02-01 23:00:13 +01:00
sfan5 a01a02f7a1 Preserve immortal group for players when damage is disabled 2021-01-31 20:38:12 +01:00
sfan5 fd1c1a755e Readd Client::sendPlayerPos optimization (was part of 81c7f0a)
This reverts commit b49dfa92ce.
2021-01-31 20:38:12 +01:00
sfan5 112a6adb10
Cache client IP in RemoteClient so it can always be retrieved (#10887)
specifically: after the peer has already disappeared
2021-01-31 20:36:47 +01:00
rubenwardy 6e0e0324a4
Fix minetest.dig_node returning true when node isn't diggable (#10890) 2021-01-31 18:49:51 +00:00
updatepo.sh cb807b26e2 Update minetest.conf.example and dummy translation file 2021-01-30 21:12:46 +01:00
SmallJoker 9a177f009b PlayerDatabaseFiles: Fix segfault while saving a player
Corrects a typo introduced in 5e9dd166
2021-01-29 18:02:40 +01:00
sfan5 9c91cbf50c
Handle changes caused by CMake minimum version bump (#10859)
fixes #10806
2021-01-29 17:35:29 +01:00
sfan5 83229921e5 Rework use_texture_alpha to provide three opaque/clip/blend modes
The change that turns nodeboxes and meshes opaque when possible is kept,
as is the compatibility code that warns modders to adjust their nodedefs.
2021-01-29 17:34:41 +01:00
sfan5 edd8c3c664 Drop never documented 'alpha' property from nodedef
Includes minimal support code for practical reasons.
We'll need it for a slightly different purpose next commit.
2021-01-29 17:34:41 +01:00
SmallJoker 2760371d8e Settings: Purge getDefault, clean FontEngine 2021-01-29 17:32:35 +01:00
SmallJoker 37a05ec8d6 Settings: Proper priority hierarchy
Remove old defaults system
Introduce priority-based fallback list
Use new functions for map_meta special functions
Change groups to use end tags

Unittest changes:
 * Adapt unittest to the new code
 * Compare Settings objects
2021-01-29 17:32:35 +01:00
SmallJoker 5e9dd1667b RemotePlayer: Remove Settings writer to Files database 2021-01-29 17:32:35 +01:00
rubenwardy b5956bde25 Sanitize ItemStack meta text 2021-01-28 21:33:10 +00:00
Vitaliy ed0882fd58
Include irrlichttypes.h first to work around Irrlicht#433 (#10872)
Fixes the PcgRandom::PcgRandom linker issue, caused by inconsistent data type definition.
2021-01-28 21:25:13 +01:00
Zughy 44a9510c81
Consistently use "health points" (#10868) 2021-01-27 18:42:02 +00:00
Vitaliy 8dae7b47fc
Improve irr_ptr (#10808) 2021-01-24 14:40:34 +00:00
Vincent Robinson ad9adcb884
Fix formspec list spacing (#10861) 2021-01-23 14:49:13 -08:00
Vincent Robinson 6a55c03dab
Make hypertext and textarea have proper scroll event propagation. (#10860) 2021-01-23 14:48:57 -08:00
Vincent Robinson 009e39e73b
FormSpec: Add list spacing, slot size, and noclip (#10083)
* Add list spacing, slot size, and noclip

* Simplify StyleSpec

* Add test cases

Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-01-23 12:46:19 -08:00
rubenwardy 4c76239818
Remove dead code (#10845) 2021-01-22 15:09:26 +00:00
rubenwardy 67aa75d444
Use JSON for favorites, move server list code to Lua (#10085)
Co-authored-by: sfan5 <sfan5@live.de>
2021-01-22 15:08:57 +00:00
rubenwardy 4fcd000e20
MgOre: Fix invalid field polymorphism (#10846) 2021-01-21 19:08:06 +00:00
Zughy 45ccfe26fb
Removed some obsolete code (#10562)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2021-01-21 18:17:09 +00:00
Zughy ea5d6312c1
ObjectRef: fix some v3f checks (#10602) 2021-01-21 18:37:38 +01:00
sfan5 d92da47697 Improve --version output to include Lua(JIT) version 2021-01-21 00:52:31 +01:00
Wuzzy 7f25823bd4
Allow "liquid" and "flowingliquid" drawtypes even if liquidtype=none (#10737) 2021-01-21 00:51:24 +01:00
Loïc Blot 4b01282821
Factorize more guiEditBoxes code (#10789)
* Factorize more guiEditBoxes code
2021-01-13 09:05:09 +01:00
JDiaz 08ee9794fb
Implement on_rightclickplayer callback (#10775)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-01-11 18:03:31 +01:00
Loïc Blot 5fcc78a1fe
Refactor/gui editbox (#10787) 2021-01-07 13:21:12 +01:00
Loïc Blot 58a709096e
refacto: factorize multiple code parts from guiEditbox childs (#10782) 2021-01-04 20:19:20 +01:00
rubenwardy edd0836011
ContentDB: Add overwrite dialog when content is already installed (#10768) 2021-01-04 15:18:31 +00:00
hecks dd5a732fa9
Add on_deactivate callback for luaentities (#10723) 2021-01-02 15:14:29 +01:00
Jean-Patrick Guerrero ff921f6989 Formspecs: Fix broken texture escaping with model[] 2021-01-01 17:03:34 +01:00
Elias Fleckenstein 9250b5205a
Add minetest.get_objects_in_area (#10668) 2020-12-29 16:50:09 +01:00
Lars Mueller 09d7fbd645 Fix item tooltip background color not working 2020-12-28 13:57:45 +01:00
Lars Mueller 8f72d4b294 Fix minetest.is_nan 2020-12-24 22:07:04 +01:00
sfan5 74762470b2 Fix some minor code issues all over the place 2020-12-24 13:44:54 +01:00
Lars 289425f6bd Minor profiler fixes. 2020-12-23 14:48:08 -08:00
rubenwardy 2c3593b51e Fix unsafe cast in l_object 2020-12-23 22:24:58 +00:00
Markus af22dd86e3
Fix some more joystick issues (#10624) 2020-12-19 22:01:05 +01:00
Vitaliy ccbf8029ea
Cleanup shader generation code (#10663)
Shader generation is a mess. This commit cleans some parts up, including dropping remains of HLSL support which was never actually implemented.
2020-12-19 20:57:10 +01:00
rubenwardy 664f5ce960
Add open user data button to main menu (#10579) 2020-12-19 13:27:15 +00:00
DS 6f8a1c99d5
Documentation for highest formspec_version[] and changelog (#10592) 2020-12-18 19:38:07 +01:00
Lars e638056523 Allow configuring block disk and net compression. Change default disk level. 2020-12-15 10:15:25 -08:00
Thomas--S d0a38f694d
Formspec: Allow to specify frame loop for model[] (#10679)
Add the ability to specify an animation frame loop range for the model[] formspec element.
2020-12-15 19:06:36 +01:00
Zughy 4d41ed0975
Semi-transparent background for nametags (#10152) 2020-12-14 23:49:30 +01:00
SmallJoker f2c8c6bf51 Revert "GUIFormSpecMenu: Shift+Click listring workaround for MacOS"
The commit caused Shift-Clicking issues on Linux due to another Irrlicht bug where
KeyInput.Shift released keys do not trigger OnEvent()

MacOS users should build using a recent Irrlicht 1.8 development version.
See also: https://sourceforge.net/p/irrlicht/patches/321/
2020-12-14 11:05:24 -08:00
SmallJoker e18b6c5a21 GUIFormSpecMenu: Shift+Click listring workaround for MacOS
event.MouseInput.Shift is not implemented for MacOS
2020-12-12 20:55:06 +01:00
hecks 6d7067fd37
Implement mapblock camera offset correctly (#10702)
Implement mapblock camera offset correctly - reduce client jitter

Co-authored-by: hecktest <>
2020-12-05 15:03:40 -08:00
sfan5 07e0b527cf Revert "Increase limit for simultaneous blocks sent per client and the meshgen cache."
This reverts commit 2f6393f49d.
2020-12-04 19:06:16 -08:00
SmallJoker 3176daee79 Input: Fix on_rightclick called when placing into air 2020-11-29 19:20:45 +01:00
Lars f1d72d212a Avoid generating the same chunk more than once with multiple emerge threads. 2020-11-26 20:31:20 -08:00
sfan5 9bb381ebd3 Change typedef to normal definitions in GUI code 2020-11-26 22:42:19 +01:00
sfan5 868749b4f8 Return star color calculation to what it previously was 2020-11-26 22:17:11 +01:00
numzero 8689e00fca Fix style 2020-11-26 12:49:10 -08:00
numzero c158e20e5b Provide fallback star color for GLES 2 with MT shaders disabled 2020-11-26 12:49:10 -08:00
numzero cdcf7dca7c Sky: support GLES2
IrrLicht built-in shader is broken, have to write my own
2020-11-26 12:49:10 -08:00
numzero be59668f47 Allow missing shaders 2020-11-26 12:49:10 -08:00
numzero d7cf40a0ce Replace TriangleFan as poorly supported 2020-11-26 12:49:10 -08:00
numzero 560627eef8 Reuse seed when updating stars
The only currently relevant parameter is scale which can now be changed
without resetting stars position
2020-11-26 12:49:10 -08:00
numzero 3077afc0a2 Store stars in a single static mesh buffer 2020-11-26 12:49:10 -08:00
numzero 89cc5bf537 Don't evaluate things many times 2020-11-26 12:49:10 -08:00
numzero 095f82692d Batch cloud drawing 2020-11-26 12:49:10 -08:00
Lars f1349be542 Avoid marking map blocks dirty upon deserialization. 2020-11-26 11:41:55 -08:00
Lars 8dc70ebb93 Fix camera panning glitches (partially revert 10489.) 2020-11-25 14:22:36 -08:00
Pierre-Yves Rollo 78273027bf Add sound to press event of some formspecs elements (#10402) 2020-11-23 21:28:25 +01:00
Paramat 872dce5020
Move Mapgen V7 river generation into the main generation loop (#10639)
All terrain generation now occurs in one loop, instead of rivers being
carved afterwards in a separate loop.
Fixes the removal of nodes added by mods in 'register on generated'.
Avoids other problems and reduces the chance of future bugs.
Mapchunk generation time is reduced.

Also fixes a code mistake which resulted in river channel generation
being disabled at floatland altitudes even when floatlands were disabled.
2020-11-20 16:11:19 +00:00
Lars 2f6393f49d Increase limit for simultaneous blocks sent per client and the meshgen cache. 2020-11-16 10:30:52 -08:00
sfan5 ad58ece180 serverpackethandler: Minor log message fixes
closes #10434
2020-11-12 21:08:26 +01:00
sfan5 b504a1aa4b Fix player sprite visibility in first person
closes #10525
2020-11-12 21:08:26 +01:00
sfan5 c441baa91b Fix overloaded virtual warnings with get/setAttachment() 2020-11-12 21:08:26 +01:00
red-001 8eb2cbac61
Fix warnings about an unused variables and implicit conversion (#10586) 2020-11-12 21:05:47 +01:00
SmallJoker 68139a28eb
Revert "Replace MyEventReceiver KeyList with std::unordered_set" (#10622)
This reverts commit 787561b29a.
2020-11-12 19:16:02 +01:00
SmallJoker adffef2b94
PlayerSAO: Run on_player_hpchange raw change values (#10478)
The callback is only run when a change in HP is to be expected.
Following cases will not trigger the callback:
 * Dead player damaged further
 * Healing full-health player
 * Change of 0 HP
2020-11-12 19:15:41 +01:00
Lars be8d1d2d99 Increase default emerge queue limits and limit enqueue requests for active blocks. 2020-11-12 09:04:10 -08:00
SmallJoker fca4db4184
ObjectRef: Re-add legacy code for set_physics_override (#10585)
These arguments are used at least by MTG beds and homedecor_common. A deprecation warning is shown to safely remove it in a future release.
2020-11-10 21:02:53 +01:00
sfan5 97aefe9b81 Mark additional locales as broken 2020-11-10 10:30:42 +01:00
sfan5 b6e47a30bb Update fallback font to newer version 2020-11-10 10:30:42 +01:00
Markus Koch e1142ee57f Joystick: Remap joystick-specific KeyTypes to generic ones
According to the following table:
	* MOUSE_L     -> DIG
	* MOUSE_R     -> PLACE
	* SCROLL_UP   -> HOTBAR_NEXT
	* SCROLL_DOWN -> HOTBAR_PREV

This commit entirely removes the special KeyTypes used for joysticks.

Support for the MOUSE KeyTypes had already been removed in the main
game code without adapting the joystick code, breaking joystick
input. This commit restores joystick functionality.
2020-11-09 11:58:50 +01:00
rubenwardy 7589cbe086
Fix object interaction distance not being checked (#10547) 2020-11-09 11:55:15 +01:00
SmallJoker c940a57a38 ContentCAO: Fix segfault when minimap is disabled 2020-11-08 11:30:16 +01:00
Lars 8c1871fa2c Revert #10495 and simplify. 2020-11-07 08:51:10 -08:00
sfan5 627c22c36e Fix integer-string conversion for shaders
closes #10605
2020-11-05 19:34:40 +01:00
SmallJoker 3356da0151
Add model[] formspec element (#10320)
Formspec element to display models, written by @kilbith, rebased and tweaked.

Co-authored-by: Jean-Patrick Guerrero <jeanpatrick.guerrero@gmail.com>
Co-authored-by: sfan5 <sfan5@live.de>
2020-11-04 21:46:18 +01:00
Lars Müller e3bd6704a0
Revert "Fix short 180 degree rotation when using set_bone_position (#10405)" (#10534)
This reverts commit 0f98b54aa4.
2020-11-04 21:43:32 +01:00
Zughy 72b93ec0d7
Fix ObjectRef errors due to lua_isnil() (#10564)
Treat 'none' values as 'nil'
2020-11-04 21:43:18 +01:00
Lars 39213bd00a Slight simplification and optimization of RemoteClient. 2020-11-03 16:23:47 -08:00
Lars aa4d3cb148 Increase defaults for viewing_range, active_object_range and related settings #10597 2020-11-03 15:55:53 -08:00
red-001 0abb3e89fa
Block attempts to connect to the client (#10589)
A Minetest peer initiates a connection by sending a packet with an invalid peer_id, for whatever reason the code for doing this ran on both the client and the server meaning you could connect to a client if you knew what the address:port tuple it was listening on.
2020-11-02 22:21:03 +01:00
SmallJoker 9c9344ceb3 Fix incorrect deprecation hints
"good" and "bad" were swapped in the process, resulting in wrong deprecation messages
2020-11-01 12:52:14 +01:00
rubenwardy 89dd05fdf3
Fix segfault in deprecation logging due to tail call, log by default (#10174) 2020-10-31 18:19:23 +00:00
Lars Müller 2dff3dd03f
Player physics: Ensure larger dtime simulation steps (#10563) 2020-10-29 20:15:46 +01:00
Oblomov a701d24a00
Show RTT in ms with 2 digits of precision (#10573)
If your ping is in seconds, you probably have other problems.
2020-10-29 20:09:59 +01:00
Lars 68cd93b865 Avoid resending near blocks unnecessarily. 2020-10-27 12:08:44 -07:00
luk3yx 61a196378f
Fix CSMs on arm64 (#10553) 2020-10-25 18:01:39 +01:00
Vitaliy 707c8c1e95
Shaders for Android (GLES 2) (#10506)
Shader support for OpenGL ES 2 devices (Android)

Co-authored-by: sfan5 <sfan5@live.de>
2020-10-25 18:01:03 +01:00
Zughy 33b2c5f5b1
Clean up l_object.cpp (#10512)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2020-10-22 16:18:01 +01:00
Maksim 5c0a57f606
Fix Media... 0% on loading screen (#9478) 2020-10-21 20:42:40 +01:00
sfan5 c7aa92aaed Fix show_on_minimap default value for local player
fixes #10526
2020-10-20 16:36:05 +02:00
sfan5 4f2303849e
Implement unloading of static_save=false objects according to existing docs (#10485) 2020-10-19 20:38:33 +02:00
sfan5 660115c1ab
Decouple entity minimap markers from nametags replacing with show_on_minimap property (#10443) 2020-10-19 20:38:15 +02:00
Lars b826e39730 Minor clientmap improvements.
- Avoid calculating isBlockInSight for blocks without meshes.
- Add metric for how many blocks the client has currently loaded.
- Make some variables constant.
2020-10-19 09:31:09 -07:00
Lars 738f624218 Periodically release all mesh HW buffers to avoid an Irrlicht bottleneck. 2020-10-17 13:22:30 -07:00
Lars ed22260822 Remove all bump mapping and parallax occlusion related code. 2020-10-17 13:09:16 -07:00
Lars f43d1cfa81 Rely on max_simultaneous_block_sends_per_client to limit blocks sent to the client. 2020-10-13 19:39:43 -07:00
Zughy 7499ebe46a
Fix float argument check in minetest.set_timeofday() (#10483)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2020-10-13 20:28:53 +01:00
Zughy 2341a4aff1
Add ObjectRef:get_children() (#10480)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2020-10-13 20:27:52 +01:00
Lars 521a04222a Avoid drawing invisible blocks on the client. 2020-10-13 09:30:59 -07:00
JosiahWI 11f3deb9c4
Pass ContentFeatures as reference to read_content_features (#10464) 2020-10-13 16:36:01 +01:00
Zughy 272b72361a
Add missing type check to InvRef:set_lists() (#10476) 2020-10-11 13:36:13 +02:00
DS f3ae45b2b2
Add a short_description to be used by mods (#8980) 2020-10-09 19:11:21 +01:00
DS b2f3f66385
Fix box[]es not being clipped (#10473)
Fixes a regression of #8676.
2020-10-08 19:44:47 +02:00
Zughy a37e96eefc
-Wmem-access only called when GCC > 7 (#10453) 2020-10-06 20:51:27 +02:00
HybridDog 2f4037752b
Add minetest.get_artificial_light and minetest.get_natural_light (#5680)
Add more detailed light detection functions, a function to get the artificial light (torches) and a function to get the sunlight as seen by the player (you can specify timeofday).

Co-authored-by: rubenwardy <rw@rubenwardy.com>
2020-10-06 20:49:46 +02:00
rubenwardy e80fc22dd9
Prevent games from setting secure settings (#10460) 2020-10-06 12:10:37 +01:00
SmallJoker f46509d5e2
Remove unused functions reported by cppcheck (#10463)
Run unused functions reported by cppcheck

This change removes a few (but not all) unused functions.
Some unused helper functions were not removed due to their complexity and potential of future use.
2020-10-05 09:07:33 +02:00
Pierre-Yves Rollo 81c66d6efb Minimap as HUD element with API control
Features:
 * Define Minimap available modes (surface/radar, scale) from Lua, using player:set_minimap_modes()
 * New HUD elements for displaying minimap with custom size and placing
 * New minimap mode for displaying a texture instead of the map
2020-10-04 15:24:34 +02:00
Jordan Snelling 3068853e8a
Add First Person Attachments (#10360)
Fixes some other third person camera specific attachments.
Implements a single new flag for entities to be forced visible in first person mode.
Old mods do not need to be updated to use the new flag and are fully backwards compatible.
2020-10-04 15:10:34 +02:00
Lars Müller 0f98b54aa4
Fix short 180 degree rotation when using set_bone_position (#10405) 2020-10-04 15:09:12 +02:00
rubenwardy 3250b37e32
Deprecate get_player_velocity and add_player_velocity (#10173) 2020-10-04 00:33:45 +01:00
random-geek 0750047919
Fix scroll bar overlapping text (again) (#9058) 2020-10-03 17:34:34 +01:00
HybridDog 9dc29a75b4
Reduce the FPS when the window is unfocused (#8837) 2020-10-03 17:33:51 +01:00
SmallJoker 947466ab28 (se)SerializeString: Include max length in the name
This commit clarifies the maximal length of the serialized strings.
It will avoid accidental use of serializeString() when a larger string can be expected.

Removes unused Wide String serialization functions
2020-10-01 09:52:59 +02:00
SmallJoker ca5c2dbefa Clean up serialization
This reverts 1a5b4b3 and further functions in serialize.cpp that are unused

The intend for a sane NetworkPacket/stream replacement was good, but a wrapper
class around i/ostream might be more versatile than introducing a new
vector-based serialization class.
2020-10-01 09:52:59 +02:00
SmallJoker 79414aa3e5 Settings: Remove unused functions
Make Settings-internal functions private
2020-10-01 09:52:59 +02:00
k.h.lai 995d405261
Improve MSVC cmake and update vcpkg instruction (#10407)
Remove unnecessary compiler flag for clang-cl
Update vcpkg instruction in README.md
2020-09-29 19:39:53 +02:00
Elias Fleckenstein 65c15e137f
Patch fast/teleport vulnerability when attached to an entity (#10340) 2020-09-26 18:41:44 +02:00
Tyler Schwend 917e357bca
Log server announce on updates and deletes too (#10177) 2020-09-26 18:41:16 +02:00
luk3yx 09af0c5946
Remove null bytes from TOCLIENT_BLOCKDATA (#10433) 2020-09-26 15:31:54 +02:00
Buckaroo Banzai c6e3050357
Correct erroneous reported max lag with prometheus (#10427)
Co-authored-by: BuckarooBanzay <BuckarooBanzay@users.noreply.github.com>
2020-09-25 18:52:42 +02:00
Paramat 9bff154cba
Fix horizontal/vertical merging bug of hardware-colored framed glass (#10417)
Previously, the param2-controlled horizontal/vertical merge feature
(which was undocumented and forgotten) was always active, causing
uses of param2 other than "glasslikeliquidlevel" to affect H/V
merging.

Only respect H/V merge bits when paramtype2 = "glasslikeliquidlevel".
H/V merge bits and liquid level bits are designed to be used
simultaneously.
2020-09-24 00:10:50 +01:00
Vincent Robinson 787561b29a
Replace MyEventReceiver KeyList with std::unordered_set (#10419) 2020-09-23 19:12:20 +02:00
SmallJoker add68369a5 Settings: Fix unittest memory leak, change input types 2020-09-22 19:05:04 +02:00
Wuzzy 55e2dd911b
Fix chat/infotext overlap if many chat lines (#10399)
Moves the infotext depending on the value of the recent_chat_messages value + 2 additional lines to account for the 2 debug mode lines + 1 additional line as "buffer" for better readability if chat is full.
2020-09-22 18:38:33 +02:00
SmallJoker e7f33ee2f1 Settings: Fix crash on exit due to group double-free 2020-09-21 19:29:02 +02:00
Lars 49117de476 Record player existence in dymmy database. 2020-09-20 19:16:14 -07:00
rubenwardy 9ec75d7765
Clean up server-side translations, remove global variable (#10075) 2020-09-16 14:51:11 +01:00
hecks fcff9f2911
Remove "generate normal maps" feature (#10313)
Erase all traces of normal "generation" from fragment shaders
Remove the "feature" from the engine and default config
Remove any leftover documentation of it
2020-09-14 19:27:25 +02:00
Sebastien Marie 3fb1f45301
Remove Thread::kill() and related unittest (#10317)
Closes: #6065
2020-09-10 12:19:18 +02:00
David CARLIER 0683bea283
Add NetBSD cpu affinity support code (#10378) 2020-09-09 19:12:58 +02:00
David CARLIER 62913b872e
Darwin platform build fix (#10376)
the event header seemingly being generic with libevent thus renaming it.
openal and opengl are deprecated on newer mac os releases thus suppressing the build warnings.
2020-09-09 19:12:03 +02:00
SmallJoker 0d128ab344
Inventory: Protect Craft and Drop actions (#10353)
Change dangerous pointer to unique_ptr for automated deletion.
2020-09-07 21:19:38 +02:00
Lejo 6dcc9e6331
Prevent interacting with items out of the hotbar (#10359) 2020-09-04 20:50:33 +02:00
Wuzzy b3ace8f197
Scale inventory image for scaled allfaces nodes (#10225)
The inventory image size of the inventory image of nodes with drawtype allfaces (and related) is scaled as well if visual_scale is set (previously, the inventory image size was always the same)
2020-09-04 20:49:50 +02:00
Lars Müller 050964bed6
Fix inventory swapping not calling all callbacks (#9923)
"Predicts" whether something will be swapped for allow callbacks, then calls callbacks a second time with swapped properties.

Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2020-09-04 20:49:07 +02:00
Paramat 4ba5046308
Add 'ores' global mapgen flag (#10276) 2020-09-03 01:28:40 +01:00
sfan5 74e22b72e1
Change default ambient occlusion gamma to 1.8 (#10185) 2020-09-01 20:18:32 +02:00
HybridDog f5df70764d
[2] Code cleanup in serverpackethandler (#9349)
* Code cleanup in serverpackethandler

* do not define p_under unless a node is pointed
* use switch-case and reduce indentation
2020-09-01 08:08:18 +02:00
EvidenceB 5c4b560b68
Add compass HUD element (#9312)
Co-authored-by: Jean-Patrick Guerrero <jeanpatrick.guerrero@gmail.com>
Co-authored-by: Pierre-Yves Rollo <dev@pyrollo.com>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2020-08-29 20:13:30 +02:00
Hugues Ross 9976f36b18
Make bgcolor tint button background images (#9818) 2020-08-29 16:41:19 +01:00