Commit Graph

1392 Commits

Author SHA1 Message Date
ROllerozxa
6d163b72dc
Rework main menu confirmation dialogs (#12356) 2022-06-03 21:46:37 +02:00
sfan5
1b68fb7683 Don't allow banning in singleplayer
fixes #11819
2022-05-29 14:00:19 +02:00
x2048
25ba9d848d
Default settings, presets and configuration for dynamic shadows (#12359) 2022-05-29 13:58:57 +02:00
Lars Müller
e8b2954586
Builtin: Optimize misc helpers (#12377)
Also add formspec_escape unit test
2022-05-27 21:40:38 +02:00
Wuzzy
ac5e8176b9
Add relative numbers for commands by prepending ~ (#9588)
* Add relative numbers for commands by prepending ~

* Some builtin code cleanup

* Disallow nan and inf in minetest.string_to_area

* Remove unused local variable teleportee (makes Luacheck happy)

* Clean up core.string_to_pos

* Make area parsing less permissive

* Rewrite tests as busted tests

* /time: Fix negative minutes not working

Co-authored-by: Lars Mueller <appgurulars@gmx.de>
2022-05-22 10:28:24 -04:00
rubenwardy
4e9e230e34
Deprecate game.conf name, use title instead (#12030) 2022-05-21 16:23:30 +01:00
x2048
dc45b85a54
Improve shadow filters (#12195)
* Rewrite shadow filtering for the new distortion
* Calculate penumbra radius using a single sample
* Avoid peter-panning effect due to filtering of short shadows
* Add adaptive filter quality for soft shadows
* Avoid sharp shadows on surfaces without normals (e.g. plants)
* Increase default and maximum soft shadow radius
* Make line numbers in shader errors match the code
2022-05-21 16:49:30 +02:00
sfan5
ec9f157512 Use native packer to transfer globals into async env(s) 2022-05-10 22:37:42 +02:00
Lars Müller
089797dbe6
Fix Minetest blaming the wrong mod for errors (#12241)
Covers the case where mods insert their callbacks manually into "minetest.registered_<callbacks>" (often to achieve a particular order of execution).
2022-05-09 20:42:43 +02:00
sfan5
7fff9da71d item_entity: Cache collisionbox for use in on_step
I don't have absolute numbers but if calls to get_properties() take up
30%+ of on_step() execution time that's bound to matter.
2022-05-08 19:12:10 +02:00
Zughy
6f0c966877
Remove unused variable WARN_INIT 2022-05-08 19:11:15 +02:00
Jude Melton-Houghton
f10a260301
Enable dependencies when enabling modpacks (#12202) 2022-05-08 16:21:59 +01:00
Jude Melton-Houghton
54bc8a7627
Fix enabling of dependencies with identical names (#12253) 2022-05-08 14:14:14 +01:00
rubenwardy
9824a451bb Fix mods not being recursively enabled
Fixes #12290
2022-05-08 14:01:32 +01:00
rubenwardy
e0e897832c Fix texture packs showing as "Nil (enabled)" in Content tab
Fixes #12285
2022-05-07 23:05:39 +01:00
Froggo
45d318a773
Enable chat clickable weblinks by default (#12115)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2022-05-06 21:15:16 +01:00
paradust7
0704ca0550
Make logging cost free when there is no output target (#12247)
The logging streams now do almost no work when there is no output target for them.

For example, if LL_VERBOSE has no output targets, then `verbosestream << x` will return a StreamProxy with a null target. Any further `<<` operations applied to it will do nothing.
2022-05-04 20:55:01 +02:00
Lars Müller
ae7664597e
Add vector.combine (#11920) 2022-05-04 07:44:14 -04:00
rubenwardy
e9e671078c ContentDB: Fix ungraceful crash on aliases when list download fails
Fixes #12267 and fixes #12154
2022-05-03 20:00:29 +01:00
sfan5
e7659883cc Async environment for mods to do concurrent tasks (#11131) 2022-05-02 20:56:06 +02:00
sfan5
e6385e2ab7 Reorganize some builtin functions in preparation for async env 2022-05-02 20:54:55 +02:00
sfan5
3d2bf8fb02 Apply disallow_empty_password to password changes too 2022-04-28 19:55:36 +02:00
rubenwardy
480d5f2d51 Fix texture packs not showing as enabled in mainmenu
Fixes #12219
2022-04-24 23:09:23 +01:00
Alex
a6170963b8
Fix invalid queued package element and path (#12218) 2022-04-24 22:49:07 +01:00
olive
a13cf0e3ce
Use mod names/titles instead of technical names (#12192) 2022-04-24 21:09:11 +02:00
SmallJoker
1c8614ac9a
Builtin: Allow to revoke unknown privileges 2022-04-24 21:08:33 +02:00
olive
062dd8dabc
Send chat error when attemping to /set a secure setting (#12193)
Attempting to /set a secure setting will now say that is disallowed.
Previously this would shut down the server.
Reading secure settings via /set is still allowed.
2022-04-16 18:50:36 +02:00
Lars Mueller
9aabd911eb Fix item entity Z-fighting 2022-04-10 23:25:00 +02:00
ShadowNinja
80db8804c7 Fix typo and update settings files 2022-04-08 14:55:21 +01:00
ShadowNinja
d9effbb179 Fix spaces generated by settings file generator 2022-04-08 14:55:21 +01:00
x2048
b0b9732359
Add depth sorting for node faces (#11696)
Use BSP tree to order transparent triangles
https://en.wikipedia.org/wiki/Binary_space_partitioning
2022-04-02 10:42:27 +02:00
Dmitry Kostenko
cf650fcaac Avoid negation of comparison operator (luacheck warning) 2022-04-01 09:00:39 +02:00
x2048
31578303a4
Tune shadow perspective distortion (#12146)
* Pass perspective distortion parameters as uniforms
* Set all perspective bias parameters via ShadowRenderer
* Recalibrate perspective distortion and shadow range to render less shadow geometry with the same quality and observed shadow distance
2022-03-31 22:40:06 +02:00
Jude Melton-Houghton
06d197cdd0
Store vector metatable in registry 2022-03-29 18:07:00 +02:00
x2048
0f25fa7af6
Add API to control shadow intensity from the game/mod (#11944)
* Also Disable shadows when sun/moon is hidden. Fixes #11972.
2022-03-26 16:58:26 +01:00
Zughy
44fc888bd6
Allow get_sky to return a table (#11963) 2022-03-05 22:15:41 +01:00
rubenwardy
7db751df3b
Fix broken dependency enabling due to missing enabled field (#12093) 2022-02-24 16:01:22 +00:00
ROllerozxa
258ae99491
Apply texture pack main menu textures immediately (#12018) 2022-02-12 20:24:20 +01:00
Wuzzy
10cf2f3edd
Add support for 'seed' in disallow_mapgen_settings (#12023) 2022-02-12 20:23:58 +01:00
Lars Müller
ad1da994b2
Increase max objects per block defaults (#12055) 2022-02-08 19:33:10 +01:00
Gaël C
0dd8e8c242
Noise params serialization fixup 2022-02-08 19:30:49 +01:00
Lars Müller
1ee37148a8
Fix types of get_mapgen_setting_noiseparams (#12025) 2022-02-04 20:28:43 +01:00
rubenwardy
c61998bd20
Revert "Disable dynamic shadows for the 5.5.0 release" (#12032) 2022-01-31 21:48:14 +00:00
Lars Mueller
1e4d6672be Fix builtin statbar backgrounds
see #12000
2022-01-31 16:35:30 -05:00
rubenwardy
128f6359e9
Use virtual paths to specify exact mod to enable (#11784) 2022-01-30 22:40:53 +00:00
sfan5
5e4a01f2de
Update credits for 5.5.0 release (#12001) 2022-01-30 21:33:08 +01:00
sfan5
5da204f5bc
Get rid of basic_debug last minute
This isn't a revert but rather just disables the codepaths. also see #12011
2022-01-30 21:32:49 +01:00
Wuzzy
9d3135a21b Update German builtin translation 2022-01-30 13:50:07 +01:00
Wuzzy
777fb616b6 Update builtin translation templates 2022-01-30 13:50:07 +01:00
ROllerozxa
172acce352
Fix Minetest logo when installed system-wide 2022-01-30 13:49:52 +01:00
sfan5
a9bccb964f Raise max mapgen limit constant to align with mapblock size 2022-01-30 13:49:26 +01:00
SmallJoker
a27362de6a Disable dynamic shadows for the 5.5.0 release
The dynamic shadows are yet not in the desired state to justify the
inclusion into version 5.5.0. A stable release is long overdue, hence
this allows fixes to continue in 5.6.0-dev to finally release an
acceptable version of the dynamic shadows feature.

Reverting this commit is highly recommended to proceed in development.
2022-01-29 18:42:55 -05:00
SmallJoker
47735c273c
Builtin: Sanity-check /time inputs (#11993)
This enforces the documented bounds for the /time command.
2022-01-27 22:23:14 +01:00
sfan5
4f6f09590c Free arguments of cancelled minetest.after() jobs 2022-01-19 23:30:18 +01:00
SmallJoker
7c321ad7f5 Main menu: Fix automatic dependency enables on doubleclick
When mods were toggled by double-click, the hard dependencies were no longer enabled automatically.
However, the 'Enabled' checkbox did still work. This commit restores the behaviour as seen before commit c401a06
2022-01-19 18:52:27 +01:00
sfan5
4c8c649779
Mainmenu game-related changes (#11887)
fixes:
* Switching between games does not immediately hide creative mode / damage buttons if so specified
* World creation menu has a game selection list even though the menu already provides a gamebar
* Showing gameid in world list is unnecessary
* Choice of mapgen parameters in menu persists between games (and was half-broken)
2022-01-09 21:15:35 +01:00
sfan5
76dbd0d2d0
Fully remove bitmap font support (#11863)
Freetype is now a build requirement.
2022-01-08 14:53:25 +01:00
Desour
1965628705 Fix vector.from_string returning a table without vector metatable 2022-01-02 22:15:41 -05:00
Vincent Robinson
4a16ab3585
Improve TTF support for pixel-style fonts (#11848) 2021-12-30 12:54:21 -08:00
Vitaliy
9b650b9efb
Add more neighbors on mesh update (#6765) 2021-12-29 22:59:53 +01:00
Jude Melton-Houghton
1b664dd870 Use defined evaluation order in profiler
See https://github.com/LuaJIT/LuaJIT/issues/238
2021-12-19 17:03:07 +01:00
sfan5
8c99f2232b Don't let HTTP API pass through untrusted function
This has been a problem since the first day, oops.
2021-12-18 20:37:13 +01:00
sfan5
1c5ece8334 Fix eat sound not playing if eating last of stack 2021-12-15 15:36:19 +01:00
sfan5
84efe279bb Fix URL escaping in content store 2021-12-13 17:33:35 +01:00
Wuzzy
76aa6103e3 Update German locale translation 2021-12-10 12:24:53 +01:00
Wuzzy
1ab3eadd87 Update builtin locale 2021-12-10 12:24:53 +01:00
Wuzzy
80c3c7e642
Improve error message if using "/help --" (#11796) 2021-12-01 20:22:46 +01:00
Corey Powell
413be76c63
Implemented disconnect_player (#10492)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-26 19:19:40 +00:00
ROllerozxa
c85aa0030f
Remove unused Direct3D shader error/warning (#11793) 2021-11-26 19:33:24 +01:00
ExeVirus
52bfbf6ed0
Allow for Game-Specific Menu Music (#11241) 2021-11-22 17:26:46 +00:00
Riceball LEE
693f98373b
Localize error messages in mainmenu (#11495)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-01 12:27:46 +00:00
Wuzzy
6910c8d920
Fix number of tool uses being off by 1..32767 (#11110) 2021-10-31 22:33:33 +00:00
Isabelle COWAN-BERGMAN
532d5b21fd
Add joystick layout for DragonRise GameCube controller (#11467) 2021-10-31 19:17:47 +01:00
sfan5
660e63dbae
Fix item duplication if player dies during interact callback (alternative) (#11662) 2021-10-25 20:30:27 +02:00
sfan5
a78124831f Fix incorrect error message in core.encode_png 2021-10-22 10:55:18 +02:00
sfan5
6de8d77e17 Move instead of copy during content install if possible 2021-10-07 00:20:01 +02:00
sfan5
2b5075f0e2 Move archive extraction in content store to async job 2021-10-07 00:20:01 +02:00
emixa-d
9fab5d594c
Add "MINETEST_MOD_PATH" environment variable (#11515)
This adds an environment variable MINETEST_MOD_PATH.
When it exists, Minetest will look there for mods in addition to ~/.minetest/mods/.
2021-10-07 00:19:41 +02:00
HybridDog
53e126ac49
List only jpg and png as screenshot format options (#11675)
The other formats are no longer supported in Minetest Irrlicht.
2021-10-05 21:54:13 +02:00
Pedro Gimeno
d7e7ade0f6 Add an option -t to force text output in /help
This also improves detection of whether formspecs are available.
2021-10-01 16:22:05 +02:00
Wuzzy
918fbe3ec1
Update builtin locale files (#11650) 2021-09-26 18:04:39 +02:00
Wuzzy
bc7d05581b
Fix several typos in settingtypes.txt (#11623) 2021-09-26 18:04:19 +02:00
TheBrokenRail
3dcf9e963e
Touch UI support for desktop builds (#10729) 2021-09-26 18:04:09 +02:00
sfan5
16a62426d6 Add feature table entry for new dynamic media API 2021-09-19 13:54:06 +02:00
DS
2cefe51d3b
Split vector.new into 3 constructors 2021-09-10 23:16:16 +02:00
sfan5
bbfae0cc67
Dynamic_Add_Media v2 (#11550) 2021-09-09 16:51:35 +02:00
Wuzzy
ff9945dc6e
Fix falling mesh nodes being half size (#11389) 2021-09-01 22:20:57 +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
sfan5
6a1424f2b1
Async-related script cleanups 2021-08-28 12:15:12 +02:00
Treer
149d8fc8d6
Add group-based tool filtering for node drops (#10141)
Supports both AND and OR requirements, e.g.

 * "a tool that's in any of these groups"
 * "a tool that's in all of these groups"
2021-08-27 20:23:20 +02:00
Lean Rada
d36dca3aba
Optimize vector length calculations (#11549) 2021-08-27 20:22:35 +02:00
Hugues Ross
47c146120a
Add disable_settings to game.conf to get rid of "Enable Damage"/"Creative Mode"/"Host Server" checkboxes (#11524)
This adds support for disable_settings to game.conf. In this you can specify a list of settings that should not be visible in the "local game" (or however it is called nowadays) tab. Enable Damage, Creative Mode and Host Server are supported.

Co-authored-by: Wuzzy <Wuzzy2@mail.ru>
Co-authored-by: Aaron Suen <warr1024@gmail.com>
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-08-12 20:08:12 +02:00
hecks
eefa39e47b
Remove statement semicolons from a lua script 2021-08-09 21:03:18 +02:00
rubenwardy
bee50ca7fa
ContentDB: Add support for package aliases / renaming (#11484) 2021-08-02 20:05:10 +01: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
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
rubenwardy
9c145ba0d8
ContentDB: Add reason to downloads (#10876) 2021-07-27 19:08:49 +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
Wuzzy
f4d8cc0f0b
Add wallmounted support for plantlike and plantlike_rooted nodes (#11379) 2021-07-15 21:19:59 +02:00
Wuzzy
6cdb150c8b
Remove hardcoded "You died." message in chat (#11443) 2021-07-12 20:32:27 +02:00