aboutsummaryrefslogtreecommitdiff
path: root/builtin
Commit message (Collapse)AuthorAge
* Documentation: Clarify global and mapgen-specific mapgen flagsparamat2016-03-11
|
* Introduce "protection_bypass" privilege.Auke Kok2016-03-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This privilege allows map protection bypassing for server operators and world moderators. Initially I had thought that bypassing protection mods would have been something that could entirely be done inside mods and minetest_game, but the concept of protection is defined in core, in the code of core.is_protected(). I don't feel that it would be logical to introduce a protection concept in core, but not some way around that for server operators to maintain map parts that need fixing, de-griefing or cleanup. Others had noticed the same problems, and proposed a patch to minetest_game. That patch is fine by itself, but it fails to add protection bypass functionality for digging normal nodes and placing nodes. So, instead, we indroduce the new priv "protection_bypass" in core, and modify 'on_place_node' and 'node_dig' to allow bypassing node protections if the player holds this priv. This priv was tested with protector redo by tenplus1. A followup patch to Minetest Game will include allowing special checks for doors, trapdoors, chests in Minetest Game. Protection mods will likely want to mimic the changes in their relevant code sections.
* Add consistent monotonic day counter - get_day_count()Auke Kok2016-03-09
| | | | | | | | | | | | | | | | | | | | | | | | I've written several experimental bits of code that revolve around the need for a consistent calendar, but implementing one is extremely hard in mods due to time changes and mods overriding core.get_timeofday(), which will conflict. The second part of the problem is that doing this from a mod requires constant maintenance of a settings file. An implementation in core is trivial, however, and solves all of these problems at virtually no cost: No extra branches in server steps, and a single branch when minetest.set_time_of_day(), which is entirely reasonable. We store the day_count value in env_meta.txt. The use case is obvious: This change allows mods to create an actual virtual calendar, or properly account for seasonal changes, etc.. We add a "/days" chatcommand that displays the current day count. No permissions are needed. It can only retrieve the day count, not modify it.
* Add AreaStore custom ID APIShadowNinja2016-03-07
|
* Add minetest.register_lbm() to run code on block load onlyest312016-03-07
|
* Settings Tab: Regroup dropdown datas in tablesJean-Patrick Guerrero2016-03-06
|
* Faster insertion into tableRui9142016-03-06
|
* Add forgotten valleys mapgen in mapgen nameMuhammad Rifqi Priyo Susanto2016-03-05
| | | | Missing `valleys` in `settingtypes.txt` and `minetest.conf.example`.
* Update settings tab + some misc. clean-upJean-Patrick Guerrero2016-03-05
|
* Don't generate trailing spaces in minetest.conf.exampleest312016-02-27
| | | | | If the default value of a setting was empty, it previously generated a trailing space.
* Mapblock mesh: Allow to use VBORealBadAngel2016-02-26
|
* Remove new_style_waterRealBadAngel2016-02-26
|
* Add Lua interface to HTTPFetchRequestJeija2016-02-22
| | | | | | | | | | This allows mods to perform both asynchronous and synchronous HTTP requests. Mods are only granted access to HTTP APIs if either mod security is disabled or if they are whitelisted in any of the the secure.http_mods and secure.trusted_mods settings. Adds httpfetch_caller_alloc_secure to generate random, non-predictable caller IDs so that lua mods cannot spy on each others HTTP queries.
* Camera: remove auto tune FPS, single view range settingRealBadAngel2016-02-21
|
* Remove preload_item_visuals codeRealBadAngel2016-02-21
| | | | Closes #3748
* Restore simple settings tab and add advanced settings as dialogBlockMen2016-02-21
|
* Documentation: Remove now unused 'vertical spawn range'paramat2016-02-11
|
* Initialize facedir and wallmounted tables only once.Diego Martinez2016-02-11
| | | | | | | | | | This makes the functions a bit faster since they don't have to recreate the tables every invocation, and makes the code more readable. Also, document `wallmounted_to_dir`. The function was implemented but not documented in `lua_api.txt`.
* Log /clearobjects modeKahrl2016-02-11
|
* Add '/clearobjects quick'Kahrl2016-02-11
|
* Filmic HDR tone mappingRealBadAngel2016-02-09
|
* Cleanup selection mesh code, add shaders for halo and selection boxesRealBadAngel2016-02-08
|
* builtin: Fix `print` crashing on nil "holes".Diego Martinez2016-02-08
| | | | | | | | | | | | | The engine implementation of `print` packs the varargs into a table and passes the table directly to `table.concat`. If you pass any value not supported by `table.concat` (particularly `nil`), the server crashes. This is unexpected behavior, as `print` is supposed to be able to work with anything. This patch changes the implementation so it first converts all arguments using `tostring`, which fixes the issue and makes the custom `print` function compatible with the stock Lua behavior.
* Use meshes to display inventory itemsRealBadAngel2016-02-07
|
* Add admin command which says who the administator is for the server.Splizard2016-02-04
|
* Mgvalleys: use standard cavesDuane Robertson2016-01-31
| | | | | | | | | | Replace simple caves with V5 caves, adding unpredictable water and lava settings and massive caves based on subterrain. Remove fast terrain mode and accompanying settings. Remove superfluous temperature/humidity settings. Remove lava/water height setting. Fix errors in humidity handling and remove humidity_break_point setting. Move cave noises to generateCaves. Fix minor formatting/naming issues and use MYMAX/MYMIN/myround.
* New timer design.Auke Kok2016-01-29
| | | | | | | | | | | | | | | | | | | | | | | I could honestly not make much sense of the timer implementation that was here. Instead I've implemented the type of timer algorithm that I've used before, and tested it instead. The concept is extremely simple: all timers are put in an ordered list. We check every server tick if any of the timers have elapsed, and execute the function associated with this timer. We know that many timers by themselves cause new timers to be added to this list, so we iterate *backwards* over the timer list. This means that new timers being added while timers are being executed, can never be executed in the same function pass, as they are always appended to the table *after* the end of the table, which we will never reach in the current pass over all the table elements. We switch time keeping to minetest.get_us_time(). dtime is likely unreliable and we have our own high-res timer that we can fix if it is indeed broken. This removes the need to do any sort of time keeping.
* Fix world config menu ignoring `name` in `mod.conf`.Diego Martinez2016-01-23
|
* Show infotext with description for item entitiesRealBadAngel2016-01-18
|
* Fix error message in settings tab overlapping 'save' buttonRogier2016-01-16
| | | | | | | | | | The save button is now fully functional again when an error message is shown. After an invalid value is entered in the settings tab dialog, the GUI label for the error message that is shown was partly overlapping the 'save' button, so that the top half of the button could not be clicked on.
* Add Valleys mapgen.Duane Robertson2016-01-14
|
* Mgflat: Set blank default spflags. Unhideparamat2016-01-10
|
* Fix the checking of flags values in the settings tabRogier2016-01-10
| | | | | | | | | | | | Changes: - Accept setting an empty flags-type value in the settings tab if the variable specification permits it - Don't accept substrings of flag values E.g. with values: 'one,two,three', 'hree', 'w', etc. used to be accepted. Not any more - Don't accept flags with random pattern-matching special characters E.g. with values: 'one,two,three', 'on.', '(o)[n]e*' etc. used to be accepted. Not any more.
* Improve parsing of setting types from settingtypes.txt for settings tabRogier2016-01-10
| | | | | | - Accept numbers prefixed with '+' - Accept multiple spaces instead of just a single one where spaces are expected - Allow flags to have an empty default value
* New 3D Mode: PageflipDalai Felinto2016-01-09
| | | | | | | | | | | | | | | | The pageflip mode requires a stereo quadbuffer, and a modern graphic card. Patch tested with NVidia 3D Vision. The mini-map is not drawn, but that's what is done for topbottom and sidebyside modes as well. Also most of the time the user would prefer the HUD to be off. That's for the user to decide though, and toggle it manually. Finally, the interocular distance (aka eye separation) is twice as much as the "3d_paralax_strength" settings. I find this a strange design decision. I didn't want to chance this though, since it's how the other 3d modes interpret this settings.
* Liquids: Flow into and destroy 'floodable' nodesparamat2016-01-07
| | | | | Add new node property 'floodable', default false Define "air" as floodable = true in C++ and lua
* Alphabetical sorting of texture packs in menu (fixes #3487)jeanpatrick.guerrero@gmail.com2015-12-26
|
* Fix missing localization for objHybridDog2015-12-20
|
* Mgfractal: Add 3D and 4D fractalsparamat2015-12-15
| | | | | | | | | | | | 3D Mandelbrot/Mandelbar 3D Christmas Tree 3D Mandelbulb 3D Cosine Mandelbulb 4D Mandelbulb Plus corresponding julia set for each Add credits for formulas Rename parameter 'formula' to 'fractal' Speed optimisations
* Fix some setting documentationest312015-12-10
| | | | | | | * Horizontal and vertical are used wrongly. Use height and width because horizontal/vertical describes different things. Thanks @kilbith for pointing out. * Update minetest.conf.example and settings_translation_file.cpp * Correct maximum/minimum copy paste mistake.
* Add on_secondary_use when right clicking an item in the airAlex Ford2015-12-02
|
* Simplify regex used in check_modname_prefix and other improvements.Robert Zenz2015-11-24
| | | | | Simplified the regex used, added comments and changed the error message to contain the correct mod name.
* Mgfractal: Move julia set selection into formula parameterparamat2015-11-23
| | | | | | Improve default parameters Update and improve documentation Unhide mapgen, but is still unstable
* Mapgen: Add global 'decorations' flagparamat2015-11-21
| | | | | | | | | | Flag is set by default in MapgenParams The global 'trees' flag remains but is now undocumented and unset by default in MapgenParams Add mgv6_spflag 'trees' set by default in defaultsettings.cpp to affect new worlds only This is automatically backwards compatible for existing worlds
* Log static_spawn error only onceRui2015-11-21
|
* Mgfractal: Revert unnecessary duplication of parametersparamat2015-11-15
|
* Mgfractal: Create a choice of 4 mandelbrot formulasparamat2015-11-14
|
* Mgv6: Move global mapgen flag 'flat' into mgv6 spflagsparamat2015-11-13
| | | | | Add mgv6 spflag 'flat' Global flag is kept for backwards compatibility but is now undocumented
* Add the player name to dropped itemsRobert Zenz2015-11-12
| | | | | The player name is now added in the field "dropped_by" on the created entity.
* Mapgen: Add flat mapgen in hidden formparamat2015-11-11
|