Commit Graph

1065 Commits

Author SHA1 Message Date
SmallJoker 622db08246
Mainmenu: Clean up and improve advanced settings dialogues (#7802)
Improvements:
1. Formspec size and description box are calculated last
2. Width and height are now adjustable per setting type
3. Error message (dialogdata.error_message) shortens the description field and is placed below
4. Add more spacing for larger fonts
5. More comments and extensible by setting different height and width values
2022-05-21 16:16:22 +02:00
paramat 959a4b979b
Settingtypes.txt: Various language improvements, document stable mapgens (#7801) 2022-05-21 16:16:22 +02:00
paramat 8c0937caee
Advanced settings tree menu: Resize, fix clipped values (#7790) 2022-05-21 16:16:22 +02:00
paramat 62f9d15714
Advanced settings menu: Centre setting edit box (#7778) 2022-05-21 16:16:21 +02:00
paramat 931b3b4c14
Settingtypes.txt: Limit comments to 90 columns to fix clipped lines (#7777) 2022-05-21 16:16:21 +02:00
paramat 974e0febcf
Add a warning to the 'chunksize' setting (#7775)
Several users have been causing problems by increasing this value.
2022-05-21 16:16:20 +02:00
SmallJoker ac46613f9c
Add core.remove_detached_inventory (#7684)
Breaks backwards compatibility for good
Bump protocol version
2022-05-21 16:16:20 +02:00
paramat 1dba8b8933
Various grammar improvements (#7769)
In builtin//pkgmgr.lua, README.md and settingtypes.txt.
Based on 2 pull requests by comradekingu.
2022-05-21 16:16:19 +02:00
SmallJoker 19e83f39db
Remove settings properly (#7676) 2022-05-21 16:16:19 +02:00
numzero f7c4228ac0
Software inventorycube (#7651)
Fixes missing/upside-down images on Android.
2022-05-21 16:16:19 +02:00
paramat 39398b9ed6
Builtin//misc_helpers: Various fixes (#7737)
Remove unused variable 'seplen'.
Fix 'cparam2'->'param2'.
Do not initialise variable 'p' twice.
2022-05-21 16:16:18 +02:00
SmallJoker faeb4bbc5f
Menu content tab: Fix clipped description and missing depends (#7703) 2022-05-21 16:16:18 +02:00
tenplus1 9d010c2c66
get_node_drops: Make empty drop return empty table (#7592)
This stops get_node_drops from returning an empty string when using drop = "" and instead returns the supposed empty table instead {}
2022-05-21 16:16:17 +02:00
paramat 2d06c7f22c
Content tab: Fix clipped text in texture pack button (#7667)
Wider buttons to not clip 'Disable Texture Pack' text when using a
small game window (1024x600, the default).
2022-05-21 16:16:17 +02:00
HybridDog a269d45a3b
World config: Add modpack descriptions and remove dependencies there (#7397)
* Allow adding descriptions to modpacks using description.txt
* Use a proper multiline formspec element: textarea
2022-05-21 16:16:16 +02:00
paramat 2e92f0f02b
Mgv5: Change tunnel parameters to those of other mapgens (#7641)
Make tunnels wider and use the noise parameters of most other mapgens.
All other underground features are already identical to all other
non-mgv6 mapgens, this final change modernises and improves the tunnels.
2022-05-21 16:16:16 +02:00
zeuner a4b8ce3f7a
Feature check for commit ac4884c3d677ef51bcce47f95ccd49d874022692 (#7618)
adds `entity_independent_selectionbox` to minetest.features
2022-05-21 16:16:15 +02:00
Ben Deutsch c5318d9e1a
Replace auth.txt with SQLite auth database (#7279)
* Replace auth.txt with SQLite auth database
2022-05-21 16:16:15 +02:00
texmex a96e24cb15
Make the primary, flow-advancing action the right-most (#7594) 2022-05-21 16:16:14 +02:00
SmallJoker 46ef9c91d0
Settings: Fix indents, chat_message_*. Update translations (#7580) 2022-05-21 16:16:14 +02:00
numzero e996c3af5f
Disable shaders GUI on unsupported drivers (#7563)
* Disable shaders GUI on unsupported drivers (#2060)

* Disable shaders if unavailable
2022-05-21 16:16:13 +02:00
HybridDog 279c7eab3d
Update mip mapping and textarea documentation (#7315)
* Fix textarea formspec documentation
The label is shown and the background isn't
* Document the missing gamma correction when generating mip maps
* Remove duplicate text (such as size parameter descriptions)
2022-05-21 16:16:13 +02:00
paramat f8d2210c59
CSM: Disallow exploitable clientside mod functions by default (#7547) 2022-05-21 16:16:12 +02:00
paramat ad60c303bd
Mgvalleys: Make river depth variation and humidity drop optional (#7532)
Add 2 new mapgen flags to make river depth variation and humidity drop
with altitude independently optional, instead of both being enabled by
the 'humid rivers' flag.

Simplify and clarify related code by removing a low priority
optimisation regarding 't_heat'.
Remove unnecessary optimisation bools and use spflags directly instead.
Improve and fix documentation in settingtypes.txt.
A few minor code cleanups.
2022-05-21 16:16:11 +02:00
SmallJoker c08b05bb36
Builtin: Replace deprecated function calls (#7561) 2022-05-21 16:16:09 +02:00
ANAND 7e76781495
Check if player exists on use of /privs (#7554)
* /privs: Check if player exists
2022-05-21 16:16:09 +02:00
lhofhansl af894f5421
Adjust some settings to modern environments and networks. (#7549) 2022-05-21 16:16:09 +02:00
srfqi b5d31c5953
Android: Add 'aux' button (#7477)
Add 'aux' button.
Use joystick to trigger 'aux' button when forward and out of main circle, by enabling
'virtual_joystick_triggers_aux' setting.
2022-05-21 16:16:08 +02:00
SmallJoker 1c0eb83cc3
core.spawn_falling_node: Keep metadata (#7476) 2022-05-21 16:16:08 +02:00
ANAND a66fee83c3
Builtin/../misc.lua: Replace minetest. with core., improve codestyle (#7540) 2022-05-21 16:16:07 +02:00
SmallJoker cb6d408a48
Make the server status message customizable (#7357)
Remove now redundant setting show_statusline_on_connect
Improve documentation of `minetest.get_server_status`
2022-05-21 16:16:07 +02:00
ANAND 8409b62388
Log usage of /pulverize (#7503) 2022-05-21 16:16:06 +02:00
paramat 04a7c23585
Mgvalleys: Fix 'mgvalleys_spflags' setting name (#7495) 2022-05-21 16:16:06 +02:00
SmallJoker 35b6de3595
Rename CSM flavours to restrictions
& Satisfy LINT
2022-05-21 16:16:06 +02:00
sfan5 f1b3fd2295
Remove misleading documentation about IPv6 server announcing 2022-05-21 16:16:05 +02:00
rubenwardy 76fc93c91d
Update to new ContentDB API 2022-05-21 16:16:05 +02:00
nOOb3167 4f676807e2
Make os.tempfolder work correctly for MinGW & MSVC (#7443) 2022-05-21 16:16:04 +02:00
ANAND 3c4bc11a38
Add hasprivs chat command (#7336)
Require 'basic_privs' priv
Only the online players are listed.
2022-05-21 16:16:04 +02:00
SmallJoker 5213469460
Fix the /shutdown command (#7431) 2022-05-21 16:16:03 +02:00
numzero 5a20e6cdcf
Fix typo (GH#7421) 2022-05-21 16:16:03 +02:00
paramat 7ae3ad01b8
Mapgen flags: Add 'biomes' global mapgen flag (#7355)
Previously the only way to disable biomes was to 'clear' the registered
biomes in a mod, but this method causes large amounts of unnecessary
processing:
1. Calculation of 4 2D noises.
2. Looping through all nodes of a mapchunk replacing nodes with identical
nodes.
The new flag disables those operations.
2022-05-21 16:16:03 +02:00
tukkek 734995c515
Stop autoforward on BACKWARD key-press (#7417) 2022-05-21 16:16:02 +02:00
Loïc Blot 1a7574e9cd
CSM/SSM: Add on_mods_loaded callback (#7411)
* CSM/SSM: Add on_mods_loaded callback
2022-05-21 16:16:02 +02:00
nOOb3167 738d5dfd3b
Fix builtin lua function os.tempfolder (#7368)
* Fix builtin lua function os.tempfolder
2022-05-21 16:16:01 +02:00
otdav33 f2c786edb3
Add crossview support (#7361) 2022-05-21 16:16:01 +02:00
HybridDog 0a09472aee
Tidy up dlg_config_world.lua (#5351)
Move code to pkgmgr
2022-05-21 16:16:00 +02:00
HybridDog 7eb2fe1d58
Fix missing ignore textures (#7326) 2022-05-21 16:16:00 +02:00
Wuzzy 6b6dce5f89
Small usage changes for air and ignore items (#7305)
* Remove “you hacker you!” from node description
* Prevent placement of ignore in builtin
* Prevent giving of "unknown" explicitly
2022-05-21 16:15:59 +02:00
rubenwardy 595d45bc57
Add screenshots to online content browser 2022-05-21 16:15:59 +02:00
rubenwardy de55f24677
Add updating to online content browser 2022-05-21 16:15:59 +02:00
paramat cbc774df86
Pointed_thing_to_face_pos: Avoid crash when player is inside a node (#7342)
Avoid crash in some situations when player is inside a node, causing
'above' to equal 'under'.
In this situation return 'under' which is the node position very close
to the face position that would normally be returned.
2022-05-21 16:15:58 +02:00
rubenwardy 149a82de6b
Fix description wrapping in browse online content 2022-05-21 16:15:58 +02:00
paramat 00bfa0a433
Mgvalleys: Update settingtypes.txt 2022-05-21 16:15:57 +02:00
rubenwardy b744f1d46f
Add online content repository
Replaces mods and texture pack tabs with a single content tab
2022-05-21 16:15:57 +02:00
SmallJoker a7cfc3984c
Builtin auth handler: Speed up file writing (#7252) 2022-05-21 16:15:56 +02:00
paramat 3151bab1e3
FOV: Raise lower limit to avoid zoom-loading of distant world (#7234)
In the client, raise lower limit from 30 to 45 degrees, to avoid server
seeing this as a zoom and loading world beyond the server-set limit.
Add minimum in settingtypes.txt and enforce lower limit when set using
minetest.conf.

In the server, distrust the client-sent FOV if below the heuristic zoom
threshold and use the player object property 'zoom_fov' to check it, to
protect against hacked clients.
2022-05-21 16:15:56 +02:00
srfqi 2b13217021
Android: Replace movement buttons with joystick (#7126)
* Android: Replace movement buttons with joystick

Replace movement control buttons (arrows at bottom left screen) with virtual joystick.
Joystick has 8 directions (same as keyboard). Basically, just map it to keyboard input.
Joystick applies only on left 1/3 of screen.
Joystick's position can be fixed by enabling fixed_virtual_joystick setting.
Three new images:
(1) placeholder joystick,
(2) joystick container (background), and
(3) joystick cursor.
Remove unused images: movement control buttons (*_arrow.png).
New data type: touch_gui_joystick_move_id

Joystick's fixed position is spaced one button size from bottom and from left of screen.
Remove unused variable: m_joystick_downlocation
2022-05-21 16:15:56 +02:00
paramat 08ddff6e0c
Mgcarpathian: Remove insignificant 'base' noise variation (#7209)
Was only +-1 node over a scale of thousands of nodes.
Replace with 'base_level' parameter value.
2022-05-21 16:15:55 +02:00
SmallJoker 58a5386e00
Add player inventory callbacks 2022-05-21 16:15:55 +02:00
HybridDog 04a81cf4ab
ObjectRef: Add add_velocity() (#3208)
Allow changing the velocity of objects relatively to their current velocity
2022-05-21 16:15:54 +02:00
SmallJoker f2628f1eb4
core.rotate_node: Do not trigger after_place_node (#6900) 2022-05-21 16:15:54 +02:00
stujones11 a85399a9d6
Optional alpha channel support for entities 2022-05-21 16:15:53 +02:00
rubenwardy fc13f12584
Load dependencies and description from mod.conf 2022-05-21 16:15:53 +02:00
rubenwardy 96afee3a52
Add reasons to on_dieplayer and on_hpchange 2022-05-21 16:15:53 +02:00
paramat f8c6f13737
Mgfractal / chunksize: Improve documentation 2022-05-21 16:15:52 +02:00
paramat f883baa51e
Rename 'subgame' to 'game' 2022-05-21 16:15:52 +02:00
HybridDog 4d35dd3c15
Fix missing warningstream (or similar problem) (#7034)
Use the --color command line parameter instead of a setting for coloured logs

This fixes the missing warningstream bug, g_settings->get mustn't be used there.
Also, the decision about en- or disabling log colours fits better to the command line parameters than minetest settings.
2022-05-21 16:15:51 +02:00
SmallJoker 878458be68
is_area_protected: Rename from intersects_protection (#7073)
* is_area_protected: Rename from intersects_protection
Return first protected position
Clarify docs: Mods may overwrite the function
2022-05-21 16:15:51 +02:00
paramat bc35b1fb69
Settingtypes.txt: Fix valleys dungeon ymax error 2022-05-21 16:15:51 +02:00
paramat 168db12309
Dungeons: Add Y limits in all mapgens
Preserve the upper limit used in mgvalleys.
2022-05-21 16:15:50 +02:00
srfqi 77f9da1c8a
Delete world dialog: Move buttons to avoid double click deletion
Move confirmation delete button to never overlap initial delete button,
to avoid world deletion by accidental double click.
2022-05-21 16:15:50 +02:00
dopik 26f80d981c
/shutdown can't do countdown when using reconnect and/or shutdown message (#7055)
Delay was converted from the param string and not the delay value, thus never using the actual given delay value when used in combination with other string values in the param, in this case reconnect and the shutdown messsage.
2022-05-21 16:15:49 +02:00
Tre d08af64363
Add a refresh button to the serverlist (#6957)
* add refresh button

* Make search and refresh buttons smaller

* Change to image button
2022-05-21 16:15:49 +02:00
HybridDog c23bdb0be1
Fix "Ignoring CONTENT_IGNORE redefinition" warning (#4393)
minetest.override_item still passes to core
2022-05-21 16:15:48 +02:00
red-001 2240df7c25
Add `on_auth_fail` callback (#7039)
Called when a client fails to supply the correct password for the account it's attempting to login as.
2022-05-21 16:15:48 +02:00
paramat a81c66d0e5
Item entity: Delete in 'ignore' nodes 2022-05-21 16:15:48 +02:00
paramat 068f060a45
Falling.lua: Delete falling node entities on contact with 'ignore'
Prevents falling node entities entering the ignore at a world edge and
resting on unloaded nodes 16 nodes below, unreachable, undiggable and
still being processed by 'on step' because they don't revert to nodes.
2022-05-21 16:15:47 +02:00
HybridDog 0a429927a9
Allow dumping userdata (#7012) 2022-05-21 16:15:47 +02:00
red-001 197b7084ff
Move `setlocale` from Lua to C++. 2022-05-21 16:15:46 +02:00
PorygonZRocks 854202903f
Add main_menu_style setting 2022-05-21 16:15:46 +02:00
HybridDog f28fb6ff6b
Add minetest.is_player (#7013)
* Add minetest.is_player

* First use for is_player
2022-05-21 16:15:45 +02:00
paramat 21112d78d9
Item entity: Prevent motion in ignore nodes 2022-05-21 16:15:45 +02:00
Wuzzy dc9f1819f8
Add kill chat command (#6992)
Replace minetest.* with core.* in 1 file
2022-05-21 16:15:45 +02:00
Wayward One e861c82fa1
Add Android drivers to the video_driver drop-down menu
Adds the Android video drivers ogles1 and ogles2 to the video_drivers drop-down menu
2022-05-21 16:15:44 +02:00
Wuzzy 4211230bb6
Make chat command + privilege help slightly more accurate (#6964)
* Make chat command help slightly more accurate

* Slightly more accurate privilege help

* Simplify command/priv help

* More command/priv help tweaks
2022-05-21 16:15:44 +02:00
Tre b471d21427
Main menu: Change tabs to 'Start Game' and 'Join Game' (#6955) 2022-05-21 16:15:43 +02:00
Muhammad Nur Hidayat Yasuyoshi (MNH48.com) 270676a290
Add missing languages from menu (#6953)
The following languages exist in Minetest PO folder were missing from the selection menu:
- dv (Dhivehi)
- ms (Malay)
- sl (Slovenian)
- sv (Swedish)
- sw (Swahili)
2022-05-21 16:15:43 +02:00
paramat 318484fcaf
Intersects_protection(): Move from Minetest Game to builtin (#6952)
A useful function that applies 'core.is_protected()' to a 3D lattice of
points evenly spaced throughout a defined volume, with a parameter for
the maximum spacing of points.
2022-05-21 16:15:42 +02:00
red-001 8683013193
Remove `on_connect` callback (#6941)
Fixes #6939
2022-05-21 16:15:42 +02:00
lhofhansl 49c25ba1f3
Revert "Add an active object step time budget #6721"
This reverts commit 9c669016d1578a5c62f932c6ccb7a2b4b1e21f0a.
See #6907
2022-05-21 16:15:42 +02:00
paramat 9a87d16534
Settingtypes.txt: Correct value of 'max block send distance' 2022-05-21 16:15:41 +02:00
paramat ed873030eb
Mgv7: Add docs for the new floatland exponent parameter 2022-05-21 16:15:41 +02:00
srfqi 1c624759bb
Advanced settings: Add range check for float type 2022-05-21 16:15:40 +02:00
rubenwardy 39bcdc7871
Add check to pause game on lost window focus 2022-05-21 16:15:40 +02:00
nOOb3167 a7436a3bd4
Fix error if setting menu_last_game is not a valid game 2022-05-21 16:15:40 +02:00
paramat dd112ad6ea
Vector functions: Fix vector.direction() function, improve documentation (#6801)
vector.direction() now returns a normalised vector with direction p1 to p2.
2022-05-21 16:15:39 +02:00
Ezhh e0d7a27298
Adjust default console height
#6797
2022-05-21 16:15:39 +02:00
Ezhh 5849b6fc97
Give subgames the ability to disallow specific mapgens (#6792) 2022-05-21 16:15:38 +02:00
Tre 4ed4d02f93
Change Normal Map setting to be less ambigous 2022-05-21 16:15:38 +02:00
ashtrayoz 24263ccbb0
Add callback to preserve node metadata as item metadata 2022-05-21 16:15:37 +02:00
SmallJoker 5cf31fb839
Builtin: Fix handle_node_drops crash with nil digger 2022-05-21 16:15:37 +02:00
Loïc Blot fe025dee62
CSM fixes: load mods after flavours & add flavour to block mod loading (#6738)
* CSM fixes: load mods after flavours & add flavour to block mod loading

* Don't permit to load mods twice

* Prepare builtin integrity global algorithm

* Add missing doc & use a nicer byteflag for LOAD_CLIENT_MODS flavour

* flag typo fix

* Invert CSM_FL_LOOKUP_NODES & CSM_FL_LOAD_CLIENT_MODS ids
2022-05-21 16:15:37 +02:00
paramat c6d98a56e7
Pointed thing to face pos: Use 'eye height' object property (#6754) 2022-05-21 16:15:36 +02:00
lhofhansl 7727cdb59e
Add an active object step time budget #6721
This can be set via the active_object_interval option.
2022-05-21 16:15:36 +02:00
HybridDog 6d8d8873c8
Add coloured logs (#4549)
The setting log_colour can be used to en-/disable or autodetect it.
2022-05-21 16:15:35 +02:00
sfan5 3a6c1d63d7
Auth handler: Player deletion & Iterator (#6741)
* Add player deletion method to auth handler (fixes #6653)
* Support iterating over the auth database

There was no way to do this previously and a recent commit
broke doing this the "hacky" way by accessing `core.auth_table`.
2022-05-21 16:15:35 +02:00
paramat 9ef2900a05
Zoom: Set zoom FOV per-player using a player object property
Remove player object property 'can zoom'.
Add player object property 'zoom fov'.
Remove clientside setting for 'zoom fov'.
Object property default is 15 degrees in creative mode, zoom disabled
in survival mode.

Needed due to zoom now loading and/or generating distant world
according to zoom FOV.

Update object properties serialisation version to 3.
2022-05-21 16:15:35 +02:00
lhofhansl d734b83ea9
Document extended meaning of active_object_send_range_blocks setting. 2022-05-21 16:15:34 +02:00
sfan5 552e74b183
Make core.auth_table private and structure builtin/auth.lua
If you give modders the ability to do something, they will...
2022-05-21 16:15:34 +02:00
paramat 630ac3d9eb
Light curve: Add and tune mid boost gaussian
Create a closer match to the light curve of 0.4.16 stable.
Results in darker shadows while maintaining the 'brightness' and light
spread.
2022-05-21 16:15:33 +02:00
paramat 2fac86cbd8
Clearobjects: Send progress messages to terminal using actionstream
Change default mode to 'quick' as 'full' can lock up a server for a
long time.
2022-05-21 16:15:33 +02:00
SmallJoker b06a8d6016
core.rotate_node: Run callbacks like with any regular placed node (#6648) 2022-05-21 16:15:32 +02:00
Ezhh 5fdad16377
Mainmenu: Improve button alignment 2022-05-21 16:15:32 +02:00
Ezhh eaad3edd8d
Mainmenu: Make capitalisation consistent in mainmenu and advanced settings 2022-05-21 16:15:32 +02:00
Auke Kok e5db1211dd
Sounds: Add falling node sounds
Falling nodes should make a sound. This can only be done here,
so for simplicity we just call the sound_play() here with the node
place sound. We ignore any gain value in the sound spec since a
falling node should be loud, so the 1.0 default gain makes sense
here.
2022-05-21 16:15:31 +02:00
Ezhh 93e0d1b036
Improve Settings tab button alignments 2022-05-21 16:15:31 +02:00
Ezhh 0d9cebb1aa
Remove incorrect entry from settingtypes 2022-05-21 16:15:30 +02:00
sfan5 aabd29474f
Make use of safe file writing in auth handler (fixes #6576) 2022-05-21 16:15:30 +02:00
DTA7 13aa347bef
Item entities: Enable item collision detection for sudden movement 2022-05-21 16:15:30 +02:00
Ezhh 3838b9c096
Fix Settings tab formspec alignment (#6585) 2022-05-21 16:15:29 +02:00
numzero 28aaf0a8b9
Rewrite rendering engine (#6253)
* Clean draw_*() arguments

* Split rendering core

* Add anaglyph 3D

* Interlaced 3D

* Drop obsolete methods
2022-05-21 16:15:29 +02:00
raymoo 7e3d9c2108
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`
2022-05-21 16:15:28 +02:00
srfqi cccbbc2187
Improvements/fixes for noise parameter input in advanced settings
Formspec input for each individual noise parameter and flag.
Allow noise flags to be set in advanced settings, previously only settable
in minetest.conf.

Standardise 'group format' for noise parameters set in minetest.conf, as
only these support noise flags. However the older 'single line' format is
still accepted to support existing minetest.conf files.
Therefore auto-generate minetest.conf.example with noise parameters in
'group format'.

Setting 'type' in settingtypes.txt is now either 'noise_params_2D' or
'noise_params_3D', the dimension number is displayed in the advanced
settings edit page.
2022-05-21 16:15:28 +02:00
Esteban I. Ruiz Moreno 75248d572d
don't pass g_settings around, and use it directly 2022-05-21 16:15:27 +02:00
Esteban I. Ruiz Moreno 94ebb91ebb
Implement #6096 2022-05-21 16:15:27 +02:00
numzero 73710f8bb4
Real global textures (#6105)
* Real global textures

* Add world-aligned textures
* Update minimal to support world-aligned tiles
* Update minimal
2022-05-21 16:15:27 +02:00
rubenwardy da24020ff0
Profiler: Fix var args not being passed to callback register function
Fixes #6517
2022-05-21 16:15:26 +02:00
adrido a06be5551d
Formspec: textarea with scrollbar improvements
Increase scrollrate depending on fontsize

Scroll on mousewheel

Allow scrolling and marking text on non writable textareas

Update lua api about readonly mode

Show scrollbar if text overflows
2022-05-21 16:15:26 +02:00
lhofhansl a42d4efd0d
Do not grant all privs to the admin - changes game behavior (#6460)
* Do not grant all privs to admins.

* Default give_to_admin to give_to_singleplayer
2022-05-21 16:15:25 +02:00
Rob Blanckaert e5c0d27efe
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.
2022-05-21 16:15:25 +02:00
James Alexander Stevenson b57a17437d
settingtypes.txt: Update zoom description (#6443) 2022-05-21 16:15:24 +02:00
Vincent Glize 1f00a7e212
Add callback on open inventory (#5793) 2022-05-21 16:15:24 +02:00
DTA7 03e7cdab87
Add mute setting (toggled by the mute key and in the volume menu) (#6415)
* Add mute setting (toggled by the mute key and in the volume menu)
2022-05-21 16:15:24 +02:00
Loïc Blot 0882448ea8
Implement mod communication channels (#6351)
Implement network communication for channels

* Implement ModChannel manager server side to route incoming messages from clients to other clients
* Add signal handler switch on client & ModChannelMgr on client to handle channels
* Add Lua API bindings + client packet sending + unittests
* Implement server message sending
* Add callback from received message handler to Lua API using registration method
2022-05-21 16:15:23 +02:00
DTA7 9b0e13f582
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.
2022-05-21 16:15:23 +02:00
paramat 9f3a70cd05
Biome API: Revert biomes, decos, ores being relative to water level
Feature is unnecessary and would greatly complicate future development,
it would also make 'get biome at pos' extremely complex.
Mgv7: Revert option to repeat surface biomes in floatlands, which
depended on the above.
2022-05-21 16:15:22 +02:00
tenplus1 2a3112ab78
Fix Rotate Node Placement (#6424)
This properly checks for creative mode or privilege when using fixed rotate_node() function.
2022-05-21 16:15:22 +02:00
DTA7 9568636867
Correct tooltip_append_itemstring terminology (#6421) 2022-05-21 16:15:21 +02:00
DTA7 18366525bc
Add setting to display the itemstring after the tooltip in the inventory. (#6413)
* Add setting to display the itemstring after the tooltip in the inventory.
2022-05-21 16:15:21 +02:00
SmallJoker 7a8dbc67aa
Customizeable max breath for players (#6411)
* Customizeable maximal breath for players
2022-05-21 16:15:20 +02:00
paramat 2d4280ec1c
Item drop: Tune to land exactly 2 nodes away with level view (#6410) 2022-05-21 16:15:20 +02:00
SmallJoker 6d3f6248d6
Network: Remove large parts of deprecated legacy code (#6404)
Also remove the setting 'send_pre_v25_init'
Keep old enum entries for obsolete commands
2022-05-21 16:15:20 +02:00
sfan5 10fbc96971
Fix core.wrap_text and make its behaviour consistent with the docs
Code based on initial implementation by @dsohler.
2022-05-21 16:15:19 +02:00
red-001 5f8c3768b3
Allow the join/leave message to be overridden by mods. 2022-05-21 16:15:19 +02:00
HybridDog 538b6b1416
Fix dropped item look (#6370)
* Abort set_item when it does nothing

* Do not adjust dropped item size linearly

Instead use cube root because the item count is proportional to the volume, not to the length.

* Make the item rotate slower when it's bigger

Bigger items chafe more on the ground, so they can't rotate as fast as small ones

* Fix items flying in air
2022-05-21 16:15:18 +02:00
rubenwardy 4036abc048
Fix crash on revocation of removed privilege 2022-05-21 16:15:18 +02:00
SmallJoker e4e8481f97
Server: Calculate maximal total block sends dynamically (#6393)
The block sends per client is 1/2 when reaching the maximal player count.
2022-05-21 16:15:17 +02:00
Wuzzy adaf32a416
Prevent /spawnentity from spawning unknown entity (#6388) 2022-05-21 16:15:17 +02:00
Rui 07532193ff
Remove DSTACK keybind setting (#6378) 2022-05-21 16:15:17 +02:00
Loïc Blot 766de75bda
Implement minetest.register_can_bypass_userlimit (#6369)
* Implement minetest.register_on_userlimit_check

This new callback permits to bypass the max_users parameter with new mods condition, based on player name or IP
Only one mod needs to permit it.

Move core part for builtin privileges checks to builtin
2022-05-21 16:15:16 +02:00
paramat 425cabb95f
World start time: Add setting for this, default unchanged 2022-05-21 16:15:16 +02:00
Vaughan Lapsley e97aa9abe7
Remove 3D noise from getSteps function (#6360) 2022-05-21 16:15:15 +02:00
Rui 39b6fb48a6
Remove nodeupdate and nodeupdate_single 2022-05-21 16:15:15 +02:00
paramat 63a338876a
Zoom: Move enabling zoom to a new player object property
Default enabled for no change in default behaviour.
Remove 'zoom' privilege.
2022-05-21 16:15:14 +02:00
Loïc Blot 87cb3f0960
Formspec: Add options to set background color and opacity (fullscreen mode + default mode) (#5493)
* Formspec: Add options to set background color and opacity (fullscreen mode)

* Enhance previous comment: Set formspec background when regenerate UI.

* This permit to do the calcul only at regen and override it with bgcolor tag
* Add a setting for default background color into formspec, separated from fullscreen
* Add a little performance gain on formspecs using a const ref instead of copying formspec string
2022-05-21 16:15:14 +02:00
rubenwardy 8e1bbe4ef0
Fix mistake when calling on_priv_grant/revoke, and document them (#6341) 2022-05-21 16:15:14 +02:00
paramat 87669917d3
Advanced settings: Make 'controls', 'graphics', 'sound' more accessible
Move client 'controls', 'graphics' and 'sound' into the first level to be
immediately visible to players who may not realise these come under 'client'.
These are the settings that new players or players on a server are likely to
want to access while not having understanding of what comes under 'client'.

Leave client 'network' and 'advanced' under 'client' as these are more
advanced.

Move 'show entity selection boxes' from the bizarre location in
'client'>'network' to 'graphics'>'in game'>'advanced'.
2022-05-21 16:15:13 +02:00
zeuner 4ab3f7829d
Lua API: Add function to deregister single biomes (#5445) 2022-05-21 16:15:13 +02:00
Nathanaël Courant 2a8c81c50e
Add '@n' escape sequences and some documentation on translated strings. 2022-05-21 16:15:12 +02:00
rubenwardy 5f04e6a431
Add on_grant and on_revoke callbacks (#4713)
* Add register_on_priv_grant/revoke, and on_grant/revoke to privs. Call from /grant and /revoke

* Call on_grant and on_revoke callbacks from set_privs
2022-05-21 16:15:12 +02:00
rubenwardy 9e23ddc248
Check item_drop amount clientside (#6242) 2022-05-21 16:15:12 +02:00
SmallJoker 692dc11e2b
Builtin item: Tidy up (#4370)
New code structure
Use setting movement_gravity
Reset age on merge
Set merge radius to 1.0m
2022-05-21 16:15:11 +02:00
Nathanaël Courant 54fc7afb7e
Add clientside translations. 2022-05-21 16:15:11 +02:00
Ben Deutsch 0365e1b5a8
Safe digging and placing (#6127)
* Setting: Safe digging and placing

* New setting 'safe_dig_and_place' under Controls
* If set, digging and placing will not auto-repeat
* Releasing buttons unblocks the respective action again
* Useful for inexperienced users in creative mode where default
  repeat times may be too short

* Safe placing (right click repetition) does not need a guarding flag

* Added new setting to minetest.conf.example
2022-05-21 16:15:10 +02:00
SmallJoker 30f3f4c248
Respect object property hp_max field for players (#6287)
* Respect object property hp_max field for players
This allows modders to configure the maximal HP per player

* Statbars: Downscale bar to full 20 HP when exceeding this value
Add default max HP for players and breath constants to builtin
Document the constants

* Rename PLAYER_MAX_HP -> PLAYER_MAX_HP_DEFAULT
2022-05-21 16:15:10 +02:00
lisacvuk 2113286d2c
Make world creation menu automatically generate a random world name (#6257)
* Make world creation menu automatically generate a name.

* Name is now initialy empty, and generated if player tries to create a world without a name.
2022-05-21 16:15:09 +02:00
Loïc Blot c784a1d02f
Reduce dedicated server step to 0.09 (#6252)
Minetest performance improvement has been huge since months, server step reduction will permit to handle client events a little bit faster without too many penalty costs due to core engine
2022-05-21 16:15:09 +02:00
numzero fb2aff64d3
New lighting curve (#5279)
* New lighting curve

* Make polynomial lighting curve

* Update default lighting settings
2022-05-21 16:15:09 +02:00
paramat 5aeb5b81b1
Advanced settings: Re-organise mapgen settings for ease of use
Add a comment about the auto-generated minetest.conf.example possibly
appearing in the bin folder.
2022-05-21 16:15:08 +02:00
Dániel Juhász 53fdd2335b
Make dropped items colorable 2022-05-21 16:15:08 +02:00
Wuzzy 1b44ce995b
Add slippery group for nodes (players/items slide) 2022-05-21 16:15:07 +02:00
Wuzzy 479cfdf2ca
Add short description for disabled texture packs 2022-05-21 16:15:07 +02:00
TeTpaAka 2476d17a6f
Change “Use” key name to “Special” 2022-05-21 16:15:07 +02:00
Ben Deutsch aa6e8eec15
Remove cloud_height setting
With the cloud API, the cloud_height setting has become obsolete
and replaceable by a mod. It, and supporting code, can be
removed.
2022-05-21 16:15:06 +02:00
HybridDog 7f6c6055f1
Abort if static_spawnpoint is an invalid setting instead of just giving an error log 2022-05-21 16:15:06 +02:00
Zeno- c0be758367
Update credits (#6228) 2022-05-21 16:15:05 +02:00
Wuzzy 420e679679
Make direct item selection keys freely bindable 2022-05-21 16:15:05 +02:00
paramat f10492dc28
Mgv7: Add 'mount_zero_level' parameter
Allows setting of the mountain 'zero level' (y where density gradient is zero).

It is easy to vertically shift smooth terrain by editing noise parameter 'offset',
but vertically shifting mountain terrain was complex and imprecise, involving
making a calculation based on an average of the mountain height parameter.
2022-05-21 16:15:04 +02:00
paramat 97468d9162
Mgv7: Add option to repeat surface biomes in floatlands 2022-05-21 16:15:04 +02:00
paramat 0bf3965812
Window size: use 1024x600 to avoid a smaller UI
The change from 800x600 to 1024x576 (16:9) was a reduction in height which caused
user interface to become smaller.
Continue to use width 1024 as it is a common small screen width.
2022-05-21 16:15:04 +02:00
Loïc Blot fe08c0fc8b
Add flavour limits controlled by server (#5930)
* [CSM] Add flavour limits controlled by server

Server send flavour limits to client permitting to disable or limit some Lua calls

* Add limits for reading nodedefs and itemdefs

* flavour: Add lookup node limits

* Merge get_node_or_nil into get_node.

Sending fake node doesn't make sense in CSM, just return nil if node is not available for any reason

* Add node range customization when noderange flavour is enabled (default 8 nodes)

* Limit nodes range & disable chat message sending by default

* Bump protocol version
2022-05-21 16:15:03 +02:00
Loïc Blot 84f53e2eb0
Revert "CSM: Revert "[CSM] Add send_chat_message and run_server_chatcommand""
This reverts commit bdac12761cd92960c3df83c932aa610f2322215f.
2022-05-21 16:15:03 +02:00
paramat 74f1344d05
Default window size: Increase to 1024x576, aspect ratio 16:9 2022-05-21 16:15:02 +02:00
rubenwardy c8de877867
CSM: Revert "[CSM] Add send_chat_message and run_server_chatcommand"
Original PR: #5747.
This reverts commit 39f4a2f607d44738d60db84eba4b30e3d7450204.
2022-05-21 16:15:02 +02:00
Elijah Duffy b9cf7066c5
Remove remaining modstore code (#6120) 2022-05-21 16:15:01 +02:00
paramat 61d6101b74
Advanced settings: Reformat noise parameter format example
Previously the example ran off the edge of the formspec.
Also include 'lacunarity' in the format instead of treating it as an option.
2022-05-21 16:15:01 +02:00
vlapsley 7cf3076f1f
Mapgen Carpathian: Add lava_depth parameter 2022-05-21 16:15:01 +02:00
Vaughan Lapsley 790654463d
Mapgen: Add Carpathian mapgen (#6015) 2022-05-21 16:15:00 +02:00
paramat b5a5cef258
Dungeons: Add setting to prevent projecting dungeons
Prevents dungeons generating into ignore nodes in ungenerated mapchunks,
which can occasionally result in a dungeon projecting from the terrain.
2022-05-21 16:15:00 +02:00
red-001 2dcce68936
Create a filesystem abstraction layer for CSM and only allow accessing files that are scanned into it. (#5965)
* Load client-side mods into memory before executing them.

This removes the remaining filesystem access that client-sided mods had and it will hopefully make then more secure.

* Lua Virtual filesystem: don't load the files into memory just scan the filenames into memory.

* Fix the issues with backtrace

* fix most of the issues

* fix code style.

* add a comment
2022-05-21 16:14:59 +02:00
Vincent Glize 2ce5c08c16
Change the server description after a search (#6074) 2022-05-21 16:14:59 +02:00
Jean-Patrick Guerrero 8d0ce4b4c4
Add Arm Inertia (#6050) 2022-05-21 16:14:58 +02:00
Dániel Juhász 5f6d3bba2a
Helper methods for hardware colorization (#5870) 2022-05-21 16:14:58 +02:00
paramat dcde9046b5
CavesRandomWalk: Make 'lava_depth' a mapgen parameter
As with 'large_cave_depth', lava depth was previously a fixed y value and
therefore incompatible with the ability to shift terrain vertically.

Add 'lava_depth' mapgen parameter to mgflat, mgfractal, mgv5, mgv7.
2022-05-21 16:14:57 +02:00
Gael-de-Sailly dd12312b58
Add minetest.rgba function that returns ColorString from RGBA or RGB values 2022-05-21 16:14:57 +02:00
paramat a9f5dcf7c7
Mgv5/v7/fractal: Add 'large_cave_depth' parameter to replace fixed value
The value cannot be fixed because we can shift terrain vertically.
This also makes these mapgens consistent with mgflat and mgvalleys which
have 'large_cave_depth' parameters.
2022-05-21 16:14:57 +02:00
Dániel Juhász e4a6867f2c
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
2022-05-21 16:14:56 +02:00
Ezhh 4bd4d2b3b7
Improve chatcommand params consistency (#5985)
* Fix and improve params consistency

* Move parenthesis requirement to descriptions
2022-05-21 16:14:56 +02:00
red-001 e6aaccee1d
Improve the path select GUI (#5852)
- Allow lua to chose whatever directories or files can be selected
- Fix selecting directories
- Rename dialog to `guiPathSelectMenu` from `guiFileSelectMenu`
- Rename lua function for opening the menu from `show_file_open_dialog` to `show_path_select_dialog`
- Remove duplicate code and fix code style.

Related changes
- fix `clang-format` whitelist.
- Regenerate minetest.conf.example
2022-05-21 16:14:55 +02:00
Elijah Duffy 2e9ef9b4eb
Menu: Do not use textlist for shaders in settings tab (#5820)
Replace the textlist used if the shaders checkbox is unchecked in the settings tab of the main menu with labels. This makes the formspec feel more consistent as the items do not move when shaders is unchecked but only change colour and the checkboxes beside them disappear.
2022-05-21 16:14:55 +02:00