Commit Graph

501 Commits

Author SHA1 Message Date
est31 5e507c9829 Add server side ncurses terminal
This adds a chat console the server owner can use for administration
or to talk with players.
It runs in its own thread, which makes the user interface immune to
the server's lag, behaving just like a client, except timeout.
As it uses the same console code as the f10 console, things like nick
completion or a scroll buffer basically come for free.
The terminal itself is written in a general way so that adding a
client version later on is just about implementing an interface.

Fatal errors are printed after the console exists and the ncurses
terminal buffer gets cleaned up with endwin(), so that the error still
remains visible.

The server owner can chose their username their entered text will
have in chat and where players can send PMs to.
Once the username is secured with a password to prevent anybody to
take over the server, the owner can execute admin tasks over the
console.

This change includes a contribution by @kahrl who has improved ncurses
library detection.
2015-11-06 08:51:14 +01:00
paramat 732cabee19 Settingtypes: Correct documentation for mgfractal
Use type 'string' for v3fs and add comments
2015-11-05 00:53:39 +00:00
paramat 64049cf72a Mgfractal: Add documentation to conf.example and settingtypes 2015-11-04 05:22:55 +00:00
kwolekr c2b5da735e Add callback parameter for core.emerge_area() 2015-11-02 18:43:09 -05:00
Rui914 482c4d69b0 minetest. to core. 2015-10-31 02:28:06 +01:00
paramat c0a7c670a4 findSpawnPos: Add setting for max height above water level
Increase default from 6 to 16 to help with mgv7 and mgfractal
Large-scale or alternative mapgens can result in a lowland spawn point not
being found, causing a spawn at (0, 0, 0) possibly buried underground
The max height is now settable to allow correct player spawn
in any mapgen or when using custom noise parameters
2015-10-29 20:03:15 +00:00
PilzAdam eba5f7cd6c Fix parameter passing to gettext call 2015-10-25 19:14:07 +01:00
BlockMen eb92bfb030 Check if hitter has inventory when punching item
Fixes #3280
2015-10-25 18:15:31 +01:00
Rui df2c474d19 Credits: Remove my name 2015-10-25 16:10:49 +01:00
PilzAdam 6907c3e40a Escape " in generated settings_translation_file.cpp 2015-10-25 10:56:58 +01:00
PilzAdam 7d5c736531 Fix setting comments 2015-10-24 23:11:21 +02:00
PilzAdam 9ee0d376d4 Don't allow games or mods to add secure. settings 2015-10-24 22:32:03 +02:00
est31 85c6b5fd06 Better gettext support for protocol version mismatch messages
Previously, xgettext failed to resolve the dynamic call.
Thanks to @JakubVanek for pointing this out.
2015-10-24 20:16:47 +02:00
PilzAdam 6f2d9de769 Improve Lua settings menu
* Add key settings to setting table and ignore them later
  This way they are added to the auto-generated minetest.conf.example
* Add flags type
* Add input validation for int, float and flags
* Break in-game graphic settings into multiple sections
* Parse settingtpes.txt in mods and games
* Improve description for a lot of settings
* Fix typos and wording in settingtypes.txt
* Convert language setting to an enum
2015-10-24 19:39:15 +02:00
Robert Zenz c32847838d Add more ways to pass data to check_player_privs
The callback can now be invoked with either the player object or name as
the first parameter, and with either a table or a list of strings, like
this:

    minetest.check_player_privs(player_name, { shout = true, fly = true })
    minetest.check_player_privs(player_name, "shout", "fly")
    minetest.check_player_privs(player, { shout = true, fly = true })
    minetest.check_player_privs(player, "shout", "fly")
2015-10-22 19:55:48 +02:00
est31 f3d82567c9 Display sane output for empty descriptions
According to its man page, the function gettext(3)
"may return a nonempty string" when msgid is "".

This commit fixes a bug where the comment ""
for some settings caused gettext to return a
"nonempty string", in this case header info of the
po file.
2015-10-18 02:18:10 +02:00
PilzAdam 006ef5b4a5 New settings tab contain all possible settings
Settings are automatically parsed from builtin/settingtypes.txt
The edit dialog automatically adjust based on the type of setting
2015-10-17 22:06:29 +02:00
ShadowNinja 2139d7d45f Refactor logging
- Add warning log level
- Change debug_log_level setting to enumeration string
- Map Irrlicht log events to MT log events
- Encapsulate log_* functions and global variables into a class, Logger
- Unify dstream with standard logging mechanism
- Unify core.debug() with standard core.log() script API
2015-10-14 01:03:54 -04:00
Rui 7f2cefa093 Localize digprop_err function 2015-10-12 02:05:11 +02:00
kilbith caf0df8924 Add viewing range GUI setting 2015-10-06 19:00:26 +02:00
Fernando Carmona Varo b12bdcce34 Added minetest.wallmounted_to_dir 2015-10-04 03:19:18 +02:00
est31 2a7d01b833 Some map border related fixes
1. Check for entity addition success in spawn_item implementation
2. Check for success in item_drop callback, so that the player
doesn't lose the item if they are outside bounds and try to drop it.
3. When existing player joins game, check that their position is inside
map bounds. If not, set their position to the return value of findSpawnPos().
4. Make findSpawnPos() respect the border

2 fixes a lua crash if a player drops an item outside map bounds.
3 fixes an assertion crash if a player leaves when being outside map bounds,
and then rejoins.
2015-09-29 23:06:15 +02:00
kwolekr f062bbd7a1 Add /emergeblocks command and core.emerge_area() Lua API 2015-09-23 15:56:24 -04:00
est31 1adc7bf5c6 Replace "self program" with "this program" in fstk boilerplates
... and remove trailing whitespace.
2015-09-21 20:05:17 +02:00
Rui914 620dcddf43 Minor tweaks handle_settings_buttons 2015-09-14 08:29:15 +02:00
Rui914 91bf68e1fe Change my email 2015-09-03 22:57:52 +02:00
Rui d493855481 Small fixes of minetest.has_feature 2015-09-03 06:10:17 +02:00
Rui 4124e360cb Minor tweaks __builtin:falling_node 2015-09-01 19:14:08 +02:00
est31 714b68add2 Credits tab: fix accidental merger of two contributors
Fixes #3125
2015-08-31 16:37:02 +02:00
Rui914 ca9ebd4545 Use gettext to "None" of texture pack list 2015-08-25 00:22:58 +02:00
kwolekr 5009d31a33 Remove some emails from credits tab 2015-08-19 15:56:08 -04:00
kwolekr f3c16ab373 Update credits tab 2015-08-19 15:14:27 -04:00
est31 d565ce9539 Client: disable mmdb modstore
The service isn't online, and on the long term, mmdb will likekly be
replaced with other services from the modding community.
2015-08-19 18:56:44 +02:00
est31 25dfd1bbf5 Don't do formspec escaping twice for loading description 2015-08-14 15:56:25 +02:00
kwolekr 2b04ab874d SAPI: Track last executed mod and include in error messages 2015-08-12 23:56:12 -04:00
jeanpatrick.guerrero@gmail.com ffd0ef16c4 Fix FSAA dropdown option reset after changing another dropdown option 2015-07-25 17:33:41 +02:00
kilbith a8c5841140 Remove drivers dropdown in the settings tab 2015-07-25 10:41:04 +02:00
Novatux 5dc9df8bbe Update my name 2015-07-24 12:04:44 +02:00
est31 3b50b2766a Optional reconnect functionality
Enable the server to request the client to reconnect.

This can be done with the now extended minetest.request_shutdown([reason], [reconnect]) setting.
2015-07-23 07:38:13 +02:00
sfan5 5b0c719171 Fix crash in mainmenu when loaded subgame does not have a "menu" directory 2015-07-21 21:55:58 +02:00
sfan5 8994913259 Allow random menu images for subgames 2015-07-21 16:58:22 +02:00
Mark Schreiber 74d8fdbd95 Add antialiasing UI setting
The Irrlicht engine supports antialiasing, and Minetest already supports
saving an antialiasing setting in its configuration file.  However,
Minetest lacked UI elements to set this setting, and previously the only
way to enable the feature was by hand-editing the configuration file.

Add a drop-down menu that can enable antialiasing.
2015-07-18 08:40:57 +02:00
Marcin c5c609ce3d Add ability to specify coordinates for /spawnentity 2015-07-18 08:35:36 +02:00
ExcaliburZero 5b9c8dfbd2 Change texture pack description file name
Change the name for texture pack description files from "info.txt" to "description.txt" in order to keep the naming consistent between description files for both mods and texture packs.

Also add backwards compatibility for texture packs that use "info.txt", and note in the log that "info.txt" is depreciated.
2015-07-18 07:50:44 +02:00
jp c3dead719a Fix remnant bugs on mainmenu
- Stop attempting to start a world when no world's created/selected in server tab
- Better world's indexes handling between subgames lists
2015-07-10 16:52:57 -04:00
RealBadAngel 39439cbd3d Add new leaves style - simple (glasslike drawtype) 2015-07-08 11:20:07 +02:00
jeanpatrick.guerrero@gmail.com c53520aa31 Fix attempt to start a world when no world is selected/created 2015-07-04 17:09:26 +02:00
Sokomine 0a0378fece Set server_announce to world.mt and respect modes when changing subgame 2015-07-02 23:03:42 +02:00
Sokomine 75d2cfef5c Fix world.mt not written when selecting mode 2015-07-01 19:50:24 +02:00
est31 29b0dc89e6 Fix single click world select 2015-06-30 20:09:29 +02:00
jeanpatrick.guerrero@gmail.com 85f3d575ec Fix bugs in mainmenu 2015-06-30 18:11:38 +02:00
rubenwardy 0d65ee878c Add Lua errors to error dialog 2015-06-29 04:47:35 +02:00
est31 7b7f8b7225 Update credits tab 2015-06-16 19:34:27 +02:00
Wuzzy bbf6f4fc25 Don't highlight entries in credits 2015-06-15 17:43:47 +02:00
Craig Davison ecdfbfc8dc Remove reference to deprecated privilege 2015-06-14 23:53:30 +02:00
TeTpaAka aa13baa30a Add minetest.register_on_player_hpchange 2015-06-13 19:40:31 +02:00
HybridDog 05f4e9ee08 More reliable serverlist behaviour
-> remember the previously loaded serverlist, and use if new one failed
-> show a "loading" serverlist
2015-06-09 16:44:43 +02:00
HybridDog 8383a61eac Decrease minetest.after globalstep lag
* abort if theres no active timer
* only reduce the timer.time of all timers when its necessary
* move updating timers_to_add into a seperate function
2015-06-06 21:00:38 +02:00
est31 b8a8be9c86 Nicer time setting logging
Now logs

ACTION[ServerThread]: player sets time to 6:03

instead of

ACTION[ServerThread]: player sets time to 6:3
2015-06-02 06:49:05 +02:00
est31 e479337c1a Fix wrong replace from previous commit 2015-06-02 00:20:12 +02:00
est31 6df6b2a0e0 Localize inside whole misc_helpers.lua 2015-06-01 18:18:18 +02:00
ShadowNinja 8f9af57314 Add core.get_dir_list 2015-05-16 18:33:22 -04:00
LeMagnesium f26421228b Added hour:minute format to time command
* The time command now accepts parameters in the form <hour>:<minute>,
    and if invoked with no parameters returns the current time in said format.
2015-05-16 18:15:34 -04:00
Brandon c5b4e54174 Add minetest.register_on_punchplayer 2015-05-15 11:09:55 +02:00
tenplus1 be18bd6a8c Don't crash if an item gets dropped into unloaded space
Items dropped into unloaded map space will crash game so here's a fix...
2015-05-15 00:15:25 +02:00
est31 178f536f08 Item entity merging refactor
Don't ident too much, and add a comment.
2015-05-15 00:06:18 +02:00
Novatux 75622c30be Add code to support raillike group names 2015-05-12 20:48:55 +02:00
Tomas Brod 732eb72a0c Fix minetest.clear_* creating new LOCAL table instead of clearing the existing one.
On calling clear_redistered_biomes the registered_biomes table is cleared
by creating a new empty table, but the pointer is not updated to point to
the new one. So after calling more register_biome, the registered_biome
table always contains 0 items, which is an error. Instead, the table is
cleared by removing all its items so the pointer (minetest.registered_*)
remains valid.
2015-04-26 15:45:58 -04:00
Muhammad Rifqi Priyo Susanto 1c7c349264 Remove fly mode in simple main menu
As the fly mode option is avaiable in-game, this is not used anymore.
2015-04-26 23:35:32 +10:00
ShadowNinja 436cb468e9 Add minetest.global_exists() 2015-04-21 22:58:37 +02:00
est31 fedbbc8883 Add reason to kicked log message and use present tense 2015-04-05 04:18:47 +02:00
Craig Robbins bf06b68c96 Let main menu scale (non-Android)
This fixes main menu not fitting for 800x600 (and lower resolutions) on PC builds
2015-03-30 00:33:07 +10:00
Craig Robbins e3d69f2920 Update credits 2015-03-29 21:31:13 +10:00
Loic Blot 284fefb0c3 Remove duplicate code since 8ca08a850f 2015-03-25 09:08:17 +01:00
fz72 8ca08a850f Save creative_mode and enable_damage setting for each world in world.mt
Create Parameters on world initialisation and set settings of old worlds
2015-03-18 09:53:24 +01:00
est31 16b961b2eb Android: Fix auto-entry of server address and port in mainmenu
Fixes #2497.
2015-03-16 20:04:00 +01:00
SmallJoker bbed01ab62 Radius parameter for /deleteblocks here 2015-03-05 00:10:53 +10:00
est31 1a175c6982 Add /setpassword and /clearpassword logging 2015-02-27 23:00:28 +01:00
ShadowNinja cd4324e5a8 Fix serialization of floating point numbers 2015-02-21 13:16:18 -05:00
Novatux 804d65a8ec Add modname convention checking
Fixes #2037
2015-02-18 16:48:58 +01:00
est31 5a0ed780f5 Server: announce MIN/MAX protocol version supported to serverlist. Client: check serverlist
Client now informs about incompatible servers from the list, this permits to prevent the protocol movements.
Server announces its supported protocol versions to master server
2015-02-18 16:09:59 +01:00
Perttu Ahola 4d744cf87a Use fixed size for builtin menus on non-android platforms 2015-02-18 12:33:40 +02:00
Loic Blot 27d4e89d32 Fix unused (and so, broken) enable_rollback_recording. This option must be reloaded at server loop but loaded when server starts, for data consistency (not a hot load variable)
ok @ShadowNinja
2015-02-18 09:28:39 +01:00
fz72 0a299fd4e5 Fix map_seed not changed when creating a new world after login to another 2015-02-18 08:57:14 +01:00
rubenwardy efa977518a Fix minetest.item_eat's replace_with_item, fixes #2292 2015-02-16 10:24:19 +01:00
Loic Blot 346652a809 Fix issue #2278, Connection sent before address data loading 2015-02-14 23:23:54 +01:00
est31 7c5accf605 Fix crash on passing false as value in table to table.copy(t)
Fixes #2293.
2015-02-14 15:18:11 +10:00
ngosang c7a7803780 Minor fixes in translations 2015-02-12 16:41:40 +01:00
Rui 92d1985802 Fix store.lua bug: default screenshot 2015-02-12 11:32:42 +01:00
Rui 14cc2c23d7 Fix tab_mods.lua: default screenshot patch
https://forum.minetest.net/viewtopic.php?f=6&t=11201
Fixed this bug.
2015-02-12 11:31:34 +01:00
ngosang 704453ff12 Fix 'Download complete' dialog in the mods store 2015-02-11 19:58:48 +01:00
kwolekr 15c037614f Hud: Modify Y-positioning of health/breath starbars to prevent overlapping with Hotbar 2015-02-08 12:47:45 -05:00
rubenwardy b56f1175a2 Change assignment to global in a function to warning 2015-02-04 14:57:06 -05:00
kwolekr a8ec7876a6 Prevent null concatenation when /deleteblocks is provided an incorrect format 2015-01-27 22:36:53 -05:00
ShadowNinja 47aca6f6d1 Fix imprecise serialization of large numbers 2015-01-25 20:19:35 -05:00
Craig Robbins a28055f8fd Allow filter and mipmap drop down menues to be translated 2015-01-21 22:33:19 +10:00
kwolekr 976d0b2caa Reorganize supported video driver query mechanisms 2015-01-18 13:24:25 -05:00
kwolekr 44e4f5ab6e Revert "Fix style on settings tab"
This reverts commit 7b17b9059e.
2015-01-18 13:19:40 -05:00
jeanpatrick.guerrero@gmail.com 7b17b9059e Fix style on settings tab 2015-01-18 23:40:18 +10:00
kwolekr 5aeeb219e3 Simplify deleteblocks chat command argument parsing
Add optional core.pos_to_string decimal place rounding
Move core.string_to_pos to builtin/common/misc_helpers.lua for consistency
2015-01-15 18:05:13 -05:00