summaryrefslogtreecommitdiff
path: root/builtin/game
AgeCommit message (Collapse)Author
2017-03-26Change command prefix to "." and add "help" command.red-001
2017-03-17Give CSM access to use `core.colorize()` (#5113)red-001
2017-03-15Fix two nul deref if digging unknown nodes. (#5398)Auke Kok
Introduced by d785456b3fa35faf47cb972fde9e8668382c5e22 (#5162)
2017-03-13[CSM] sound_play & sound_stop support + client_lua_api doc (#5096)Loïc Blot
* squashed: CSM: Implement register_globalstep * Re-use fatal error mechanism from server to disconnect client on CSM error * Little client functions cleanups * squashed: CSM: add core.after function * core.after is shared code between client & server * ModApiUtil get_us_time feature enabled for client
2017-03-13[CSM] Add client-sided chat commands (#5092)red-001
2017-03-11Save metainfo for falling nodesVladislav Tsendrovskii
2017-03-10Optimize item.luatenplus1
Replace slow ItemStack get_definitions with registered_nodes one's and cached playername as it's used multiple times. Also removed local item = itemstack:peek_item() as it is never used.
2017-03-04Add minetest.spawn_falling_node(pos) (#5339)zaoqi
* Add minetest.spawn_falling_node(pos) * lua_api.txt: Add minetest.spawn_falling_node(pos) * Update minetest.spawn_falling_node(pos)
2017-02-25Fix crash that can be caused by the shutdown command. (#5292)red-001
2017-02-18Fixes for colorwallmounted and colorfacedir nodesDániel Juhász
Correct node placement prediction for attached colorwallmounted nodes. Correct placement direction for colorfacedir and colorwallmounted nodes. Correct detatch mechanism for attached colorwallmounted nodes.
2017-02-18Statbars.lua: Cache enable_damage settingtenplus1
2017-02-18Add support for the new arguments of `request_shutdown` to the `/shutdown` ↵red-001
chatcommand. (#5252)
2017-02-10Add textures for air and ignore items (#5196)Wuzzy
2017-01-31Make facedir_to_dir and wallmounted_to_dir work with coloured nodes as well. ↵Nathanaël Courant
(#5153)
2017-01-23core: Add dir_to_yaw and yaw_to_dir helpersAuke Kok
These are needed to go from things like entity yaw to a vector and vice versa.
2017-01-20Add chatcommand unregister and override API (#5076)Elijah Duffy
Introduces two functions to unregister and override chatcommands. minetest.unregister_chatcommand("<name>") and minetest.override_chatcommand("<name>", {<redifinition>})
2017-01-18Add minetest.player_exists() (#5064)rubenwardy
2017-01-17Improve priv descriptions (#5047)Ezhh
2017-01-17Remove client-side chat prediction. (#5055)red-001
Network lag isn't really a big issue with chat and chat prediction makes writing mods harder.
2017-01-09Add staticdata parameter to add_entity (#5009)Rui
* Add staticdata parameter to add_entity * Add add_entity_with_staticdata to core.features
2017-01-09builtin/.../falling.lua: Avoid crash when hitting unknown nodessfan5
2017-01-04Expose and document chatcommands as minetest.registered_chatcommandsrubenwardy
2016-12-31Fix /grant & /revoke not working with custom auth handler (#4974)Dorian Wouters
core.auth_table is not supposed to be accessed directly.
2016-12-21Builtin/../falling.lua: Avoid crash when object pos over limitparamat
If the object pos is over limit, 'add entity' will not add an entity, causing 'obj' to be nil.
2016-12-03Don't send a join message in singleplayer mode.red-001
2016-11-28Allow restricting detached inventories to one playersfan5
This combats the problem of sending the hundreds of "creative" / "armor" or whatever detached invs that exist on popular servers to each and every player on join or on change of said invs.
2016-11-23Make supplying empty formspec strings close the formspec (#4737)orwell96
This will only happen if the formname matches or if formname is "".
2016-11-20Tool break: Reduce gain of break soundsparamat
2016-11-18Builtin/../item: Enable tool breaking soundsAuke Kok
If a tool wears out and is destroyed, it's itemstack count goes to 0, and we can optionally play a breaking sound. This patch implements playing a breaking sound when this occurs. Sounds need to be added to the tool itemdef registration as the sound name string in the .sound.breaks member.
2016-11-16Introduce builtin_shared and use it to fix #4778est31
Fixes #4778 which was about the error: ServerError: Lua: Runtime error from mod '' in callback item_OnPlace(): /usr/local/share/minetest/builtin/game/item.lua:278: attempt to call global 'check_attached_node' (a nil value) The issue was a regression of commit 649448a2a91fbf3e944b2f2e739f4e2292af1df0 "Rename nodeupdate and nodeupdate_single and make them part of the official API"
2016-11-14Rename nodeupdate and nodeupdate_single and make them part of the official APIest31
Now, the renamed forms of nodeupdate and nodeupdate_single are part of the official API. As nodeupdate has been used by Minetest Game and in mods despite of not being part of the official API, we ease the transition by still supporting it for the 0.4.15 release. After the release, the two functions can be removed. The removal will not violate the stability promise, as that promise only includes the official and documented API. Also, make some formerly global functions local. They most likely haven't been used by mods, therefore they won't get stubs with deprecation warnings, hard erroring directly.
2016-11-07Builtin/../falling: Fix bugs caused by 'ignore' nodesparamat
Original commit by t4im, rebased and developed by paramat. Fix CONTENT_IGNORE being replaced by falling nodes or causing large areas of sand to collapse into itself. Format some conditional code for clarity. Add and clarify some comments.
2016-11-07Privileges: Only give singleplayer 4 basic privsWuzzy
- interact - shout - privs - basic_privs
2016-11-04Add debug priv, and allow player to display the scene as wire-frame. (#4709)lhofhansl
2016-10-20Chat commands: Trim whitespaces from input of `/privs` commandred-001
2016-10-16Builtin/../chatcommands: Add /grantme commandred-001
2016-10-14Builtin/../falling.lua: Code optimisationtenplus1
2016-10-08VoxelArea: faster iter function (#4490)HybridDog
2016-10-03Builtin/falling: Add fallback vector in case of nil 'wallmounted to dir'paramat
The fallback vector is in case 'wallmounted to dir' is nil due to voxelmanip placing a wallmounted node without resetting a pre-existing param2 value that is out-of-range for wallmounted. The fallback vector corresponds to param2 = 0.
2016-10-03Forceloading: Transient forceloadsraymoo
Adds a flag to forceload_block which lets you turn off persistence for that forceload.
2016-10-01Fix typo in core.after (#4560)Rui
2016-09-21Builtin: Change error to warning for light_source > 14paramat
2016-09-17Register.lua: Throw error if node 'light_source' > core.LIGHT_MAXparamat
Add 'core.LIGHT_MAX = 14' to builtin/game/constants.lua with the intention to replace misplaced 'default.LIGHT_MAX = 14' in Minetest Game. Add comment in light.h requiring the constant be changed in both places. Add lighting bug warning to note in lua_api.txt. There are hundreds of mod uses of 15 which causes a lighting bug.
2016-09-08Add minetest.unregister_item and minetest.register_alias_forcepaly2
2016-08-29Builtin: Disallow registering users with the same nameSmallJoker
Prevents duplicate names: 'NickName', 'nickname', 'NICKNAME'. Skips already registered users, so they can connect as usual.
2016-08-22Move on join and on leave messages to lua (#4460)Xunto
2016-08-10Zooming the camera requires the 'zoom' privilegeBen Deutsch
2016-07-26Builtin: Add core.MAP_BLOCKSIZE constantTim
2016-07-26Builtin: Fix check for a player object in core.check_player_privsTim
core.check_player_privs accepts as first argument a name or player object, but just tested for a string. This caused crashes inside builtin, when being passed any unexpected types. This provides a better (duck-typing like) test, better error reporting.
2016-07-12Builtin/profiler: Replace game profiler (#4245)Tim
Use the setting "profiler.load" to enable profiling. Other settings can be found in settingtypes.txt. * /profiler print [filter] - report statistics to in-game console * /profiler dump [filter] - report statistics to STDOUT and debug.txt * /profiler save [format [filter]] - saves statistics to a file in your worldpath * txt (default) - same treetable format as used by the dump and print commands * csv - ready for spreadsheet import * json - useful for adhoc D3 visualizations * json_pretty - line wrapped and intended json for humans * lua - serialized lua table of the profile-data, for adhoc scripts * /profiler reset - reset all gathered profile data. This can be helpful to discard of any startup measurements that often spike during loading or to get more useful min-values. [filter] allows limiting the output of the data via substring/pattern matching against the modname. Note: Serialized data structures might be subject to change with changed or added measurements. csv might be the most stable, due to flat structure. Changes to the previous version include: * Updated and extended API monitoring * Correct calculation of average (mean) values (undistorted by idleness) * Reduce instrumentation overhead. * Fix crashes related to missing parameters for the future and occasional DIV/0's. * Prevent issues caused by timetravel (overflow, timejump, NTP corrections) * Prevent modname clashes with internal names. * Measure each instrumentation individually and label based on registration order. * Labeling of ABM's and LBM's for easier classification. Giving several ABM's or LBM's the same label will treat them as one. Missing labels will be autogenerated based on name or registration order. * Configurable instrumentation and reporting. Skip e.g. builtin if you don't need it. * Profile the profiler to measure instrumentation overhead.