1
0
mirror of https://github.com/minetest/minetest.git synced 2025-07-08 10:50:19 +02:00
Commit Graph

384 Commits

Author SHA1 Message Date
0404bbf671 Rewrite client media download and support hash-based remote download
Move most of the media-related code in client.cpp into a new class
ClientMediaDownloader (clientmedia.cpp, clientmedia.h). Among other
things, this class does the following things:

- Download [remote_server][sha1] instead of [remote_server][name]. This
is to support servers that provide the same file name with different
contents.
- Initially fetch [remote_server]index.mth. This file should follow the
Minetest Hashset format (currently version 1) and contain a list of SHA1
hashes that exist on the server.
- The list of needed SHA1s is uploaded (via HTTP POST) when index.mth is
requested, so servers can optionally narrow down the list to the needs
of the client.
- If index.mth is missing (HTTP response code 404), we enter compat mode,
fetching [remote_server][name] as before this commit.
- remote_server can now contain multiple servers, separated by commas.
The downloader code attempts to split requests between the different
servers, as permitted by each server's index.mth. If one server claims
to have a file but actually doesn't (or something fails), we ask a
different server that also claims to have it.
- As before, when none of the remote servers provide a particular
file, we download it via the conventional method, i.e. using
the minetest protocol: TOSERVER_REQUEST_MEDIA / TOCLIENT_MEDIA.
- Bugfix: Every downloaded file's SHA1 is now verified against the SHA1
announced by the minetest server (before loading it and inserting it
into the file cache).
- Bugfix: Only send TOSERVER_RECEIVED_MEDIA when we actually have all
media. This should fix #863.
2013-12-13 18:05:20 +01:00
76036abdb0 Add configurable font shadow. 2013-12-12 21:47:54 +04:00
22dbbf0a6f Improve (re)spawn, add cache_block_before_spawn and max_spawn_height settings 2013-12-05 16:09:02 -05:00
2330267d22 Shaders rework. 2013-12-03 18:55:25 +01:00
b08d7558de Split server/client port setting to avoid port number clashes in mainmenu 2013-11-28 21:43:06 +01:00
a55c073ce9 Increase liquid_loop_max to 10000 again 2013-11-17 21:05:14 +01:00
372d638ec1 Lower the default max_users from 100 to 15 2013-09-28 21:09:52 +02:00
4c704fe306 Add configurable PRAGMA synchronous = 2013-09-17 02:11:30 +04:00
6de16bb438 Add fallback font support for some languages. 2013-09-08 15:16:19 +04:00
af490330e7 Fix remnants of s32 enable_shaders 2013-09-04 00:16:33 +02:00
d05b15df77 Add a setting for HighPrecisionFPU (fixes #763). 2013-08-25 18:25:01 +04:00
4e1f50035e Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenu 2013-08-14 21:03:33 +02:00
c8930850e3 Remove farmesh 2013-08-13 09:25:13 +02:00
2af5864534 Make freetype usage configureable by a setting 2013-08-04 20:35:14 +02:00
fe1fe1b1e4 Change large amount of objects to be configurable via a setting in minetest.conf (max_objects_per_block). 2013-08-04 15:28:01 +03:00
3aedfac968 Weather support 2013-07-27 23:21:48 +04:00
0b4b9e7f3a Fix modstore URLs 2013-07-22 22:26:48 +02:00
a38f8d9900 Disable gamemanager by default 2013-07-22 18:16:36 +02:00
ac7a44792c Masterserver mods announse, ipv6, better curl errors 2013-07-13 00:19:05 +04:00
3f6f327cb9 Add texture bumpmapping feature. 2013-07-04 02:36:32 +02:00
89533f0811 Update wiki url 2013-07-03 03:37:00 +02:00
967121a34b Replace C++ mainmenu by formspec powered one 2013-07-02 19:58:20 -04:00
8161ab573f Remove texture atlas / AtlasPointer, rename getTextureRaw to getTexture 2013-07-02 03:03:10 +02:00
2e292b67a0 Add Lua on_mapgen_init callback, and minetest.set_mapgen_params API 2013-06-27 22:35:35 -04:00
75b8c13b00 New math mapgen with fractal based worlds 2013-06-23 18:07:10 +04:00
f960c3be31 Add support for IPv6
Two new configuration options are added:
     - "enable_ipv6" to enable/disable the overall use of IPv6
     - "ipv6_server" to enable/disable the use of IPv6 sockets when running
       a server (when "enable_ipv6" is enabled)
2013-06-23 11:31:22 +04:00
b1ebd9f79c Add a setting for max loop count per step in liquid update 2013-06-20 22:31:46 +00:00
e988df0fbd Add and implement setting max_clearobjects_extra_loaded_blocks.
Now Environment::clearAllObjects() unloads unused blocks in an interval
defined by max_clearobjects_extra_loaded_blocks (default 4096).
2013-06-03 20:09:32 +02:00
6f9d384311 Replace c55.me links 2013-06-03 01:57:42 +02:00
1ba1fb42a4 Fix link in minetest.conf.example 2013-05-20 15:51:21 +02:00
822723c246 Add mouse_sensitivity option 2013-05-13 17:39:16 +02:00
36747794ab Disable fall bobbing by default; enable using fall_bobbing_amount = 1.0 2013-04-23 23:19:36 +03:00
f70378f7f5 Mapgen indev: float islands, larger far biomes 2013-03-24 03:40:15 +04:00
34b185e955 Add singlenode mapgen; generates solely the node 'mapgen_singlenode', defaults to air 2013-03-22 19:16:51 +02:00
5a9fd8f433 Add missing settings to minetest.conf.example 2013-03-17 13:07:53 +01:00
165498cecf initial mapgen indev version with farscale feature and huge caves 2013-03-16 21:48:32 -04:00
6823ce99a7 Re-add jungles, apple trees 2013-03-16 17:06:11 -04:00
f5ab056b38 Liquid fine tuning 2013-03-14 17:06:25 -04:00
350596b94f Add cloud menu background by Krisi, configurable with the menu_clouds option.
Also add a menuheader, menusplash, menufooter_clouds, and allow HD menu footers.
And finally don't git-ignore textures/base/.
2013-03-13 21:18:40 -04:00
7caa28a6aa Change default settings for log level, texture atlas, document new settings 2013-02-27 19:59:05 -05:00
b90e431fc7 new adjustable finite liquid 2013-02-24 18:39:07 +04:00
ee07c3f7cf new auto masterserver 2013-02-22 02:04:53 +04:00
c88d89d26e Some kind of middleway values for player acceleration for now 2013-02-15 23:18:19 +02:00
30b9a4d6b4 Add Freetype support 2013-02-14 18:46:08 +01:00
df3c925b3c Improved Player Physics 2013-02-14 06:21:30 +10:00
9b2044351f Document remote_media setting 2013-02-07 17:58:52 +04:00
b52dfbe510 Add mapgen parameters to minetest.conf.example 2013-01-21 21:41:37 +02:00
6f93c01af9 Add a list of servers to the "Multiplayer" tab
If USE_CURL is set, it also downloads a list from a remote server.
The url of this list is configurable in minetest.conf using the setting "serverlist_url"
The local list of favorite servers is saved in client/serverlist/filename
filename is also configureable using the setting "serverlist_file"
2013-01-21 16:42:56 +02:00
0437abbffb Add a setting to enable always flying fast 2013-01-07 18:26:34 +01:00
615fd498bc Fix typo doubletab -> doubletap 2013-01-04 20:04:48 +01:00