Kahrl
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
Novatux
d879a539cd
Add minetest.swap_node
2013-11-30 18:37:56 +01:00
proller
a924409bd1
Masterserver update
2013-10-18 01:32:49 +04:00
kwolekr
9bccd75e34
Weather: Clean up getHeat/getHumidity somewhat
2013-09-16 23:33:53 -04:00
Sfan5
7e44c2ace1
Make it compile
2013-09-09 22:50:50 +02:00
Ilya Zhuravlev
58841ef12f
Add dummy and LevelDB database backends
2013-09-09 22:50:50 +02:00
PilzAdam
7860097eda
Use player:set_hotbar_image() instead of hardcoded hotbar.png
2013-09-05 00:21:16 +02:00
Kahrl
4e1f50035e
Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenu
2013-08-14 21:03:33 +02:00
Perttu Ahola
e6687be493
Fix server getting completely choked up on even a little of DoS
...
* If client count is unbearable, immediately delete denied clients
* Re-prioritize the checking order of things about incoming clients
* Remove a huge CPU-wasting exception in ReliablePacketBuffer
2013-08-04 10:44:37 +03:00
proller
06cdce1e12
Weather backward compatibility
2013-08-02 00:51:36 +04:00
RealBadAngel
d19c8b815d
Add set_breath and get_breath to lua API.
2013-07-20 20:34:11 +02:00
Kahrl
96fe1de832
Add ObjectRef.hud_set_hotbar_itemcount and add TOCLIENT_HUD_SET_PARAM
2013-05-26 00:23:33 +02:00
sapier
ab43377577
Move scriptapi to separate folder (by sapier)
...
On the lua side, notably minetest.env:<function>(<args>) should now
be replaced by minetest.<function>(<args>).
The old way is and will stay supported for a long time.
Also:
Update and clean up lua_api.txt (by celeron55)
Move EnvRef to lua and remove add_rat and add_firefly (by kahrl)
Add separate src/util/CMakeLists.txt, other minor fixes (by kahrl)
2013-05-25 00:51:02 +02:00
kwolekr
d3f0ce6224
Generalize hud_builtin_enable into hud_set_flags
2013-04-25 19:37:36 -04:00
Diego Martínez
e703c5b81f
Added support to disable built-in HUD elements
2013-04-24 17:28:00 +03:00
ShadowNinja
3d4d0cb574
Add option to not prepend "Server -!- " to messages sent with minetest.chat_send_player()
2013-04-23 09:47:08 +03:00
kwolekr
666aae3593
Split HUD code off to hud.cpp, make into a class, extensive Lua HUD modification
2013-04-18 02:19:31 -04:00
Jonathon Anderson
49f6e347f0
Lua HUD
2013-04-18 02:14:33 -04:00
kwolekr
8ec3fc35c6
Add Mapgen V7, reorganize biomes
2013-04-07 00:50:21 -04:00
PilzAdam
7d9329ecfe
New damage system, add damageGroups to ToolCapabilities, bump protocol version
2013-03-29 20:14:09 +01:00
Jeija
e1ff5b1361
Allow spawning particles from the server, from lua
...
Spawn single particles or make use of ParticleSpawner for many randomly spawned particles.
Accessible in Lua using minetest.spawn_particle and minetest.add_particlespawner.
Increase Protocol Version to 17.
Conflicts:
src/clientserver.h
2013-03-23 23:16:29 +01:00
Ilya Zhuravlev
6a1670dbc3
Migrate to STL containers/algorithms.
2013-03-11 19:08:39 -04:00
kwolekr
979ca23f1e
Merge pull request #482 from proller/liquid
...
finite liquid
2013-02-25 20:52:24 -08:00
kwolekr
9b5f182642
Remove dead code, relocate some code
2013-02-25 23:11:12 -05:00
kwolekr
b9d8e59bbf
Add emerge.cpp, initial EmergeThread changes
...
- Neatly placed all emerge related code into a new file, emerge.cpp
- Greatly cleaned up the code in EmergeThread::Thread()
- Reworked Emerge queue. Now an actual std::queue of v3s16 block positions
- Removed the completely unnecessary map of peer ids requesting blocks
2013-02-25 22:56:18 -05:00
Sfan5
6d0ea26c2d
Update Copyright Years
2013-02-24 20:15:24 +01:00
PilzAdam
497ff1ecd6
Change Minetest-c55 to Minetest
2013-02-24 18:49:03 +01:00
proller
b90e431fc7
new adjustable finite liquid
2013-02-24 18:39:07 +04:00
proller
ee07c3f7cf
new auto masterserver
2013-02-22 02:04:53 +04:00
MirceaKitsune
df3c925b3c
Improved Player Physics
2013-02-14 06:21:30 +10:00
kwolekr
631a835e07
Finish and clean up mapgen configuration
2013-01-21 21:41:37 +02:00
kwolekr
96898c1794
Add initial Lua biomedef support, fixed biome selection
2013-01-21 21:41:37 +02:00
kwolekr
11afcbff69
The new mapgen, noise functions, et al.
2013-01-21 21:41:33 +02:00
Jürgen Doser
6af8a34d91
Basic support for configuring which mods to load for each world
...
settings.h: added function to return all keys used in settings, and a
function to remove a setting
mods.{h,cpp}: added class ModConfiguration that represents a subset of the installed mods.
server.{h,cpp}: server does not load add-on mods that are disabled in
the world.mt file. mods are disabled by a setting of the form
"load_mod_<modname> = false". if no load_mod_<modname> = ... setting
is found, the mod is loaded anyways for backwards compatibilty. server
also complains to errorstream about mods with unstatisfied
dependencies and about mods that are not installed.
guiConfigureWorld.{h,cpp}: shows a treeview of installed add-on mods
and modpacks with little icons in front of their name indicating their
status: a checkmark for enabled mods, a cross for disabled mods, a
question mark for "new" mods
Mods can be enabled/disabled by a checkbox. Mods also show a list of
dependencies and reverse dependencies. double-click on a mod in
dependency or reverse dependency listbox selects the corresponding
mod. Enabling a mod also enables all its dependencies. Disabling a mod
also disables all its reverse dependencies.
For modpacks, show buttons to enable/disable all mods (recursively,
including their dependencies) in it.
Button "Save" saves the current settings to the world.mt file and
returns to the main menu. Button "Cancel" returns to main menu without
saving.
basic keyboard controls (if the proper widget has keyboard focus):
up/down: scroll through tree of mods
left/right: collaps/expand a modpack
space: enable/disable the selected mod
2013-01-21 17:31:50 +02:00
sapier
0b1d09ff4f
Fix buttons not working for Lua-triggered formspecs
2013-01-07 19:00:33 +02:00
sapier
da9707950e
Add TOCLIENT_SHOW_FORMSPEC to display formspecs at client from lua
2013-01-02 20:59:37 +02:00
Kahrl
22e6fb7056
ShaderSource and silly example shaders
2012-12-02 00:46:18 +02:00
Perttu Ahola
8ccdd3bdb4
Ranged support of protocol version on server side
2012-11-29 22:08:25 +02:00
Perttu Ahola
c9ed379e39
Add enable_rollback_recording setting, defaulting to false
2012-07-28 03:08:09 +03:00
Perttu Ahola
0190f9b077
Experimental-ish rollback functionality
2012-07-27 02:27:18 +03:00
Perttu Ahola
2ac20982e0
Detached inventories
2012-07-24 20:57:17 +03:00
Matthew I
136eb32389
Add minetest.get_modnames() to Lua API
2012-07-22 13:36:03 +03:00
Perttu Ahola
16ad10e62f
Allow defining player's inventory form in Lua
2012-07-19 14:09:16 +03:00
Perttu Ahola
9f031a6759
Optimize headers
2012-06-17 04:03:39 +03:00
Perttu Ahola
d0ea6f9920
Properly and efficiently use split utility headers
2012-06-17 02:40:36 +03:00
Perttu Ahola
037b259197
Switch the license to be LGPLv2/later, with small parts still remaining as GPLv2/later, by agreement of major contributors
2012-06-05 18:54:07 +03:00
Kahrl
704782c95b
WIP node metadata, node timers
2012-06-03 22:31:00 +03:00
Perttu Ahola
56ba193c77
Allow getting the path of builtin.lua using minetest.get_modpath("__builtin")
2012-04-01 12:38:14 +03:00
Perttu Ahola
52122c342d
Add 'fly' and 'fast' privileges and the underlying privileges-to-client system
2012-03-31 16:25:02 +03:00
Perttu Ahola
7cad0a2dcd
Reimplement authentication handler in Lua; now we have 1) infinite privilege names, 2) minetest.register_authentication_handler()
2012-03-30 18:42:18 +03:00
Kahrl
f8c3743991
added PlayerSAO and RemotePlayer, removed ServerRemotePlayer
2012-03-29 14:05:45 +03:00
Perttu Ahola
a6ca7eb29d
Area-based MapEditEvent ignore and that put to use for on_generate too
2012-03-29 01:22:08 +03:00
Perttu Ahola
ae7aa65069
Add minetest.is_singleplayer()
2012-03-28 13:22:48 +03:00
Perttu Ahola
f801e16b78
Texture cache -> Media cache WIP
2012-03-25 11:51:33 +03:00
Perttu Ahola
601d1936c9
Lua API for playing sounds
2012-03-24 19:01:26 +02:00
Perttu Ahola
6c14025b2d
Add event manager and use it to trigger sounds
2012-03-24 04:24:26 +02:00
Perttu Ahola
c301e3c82a
celeron55's sound system initial framework
2012-03-24 04:24:23 +02:00
Perttu Ahola
1f56d71f19
Rework directory structure
2012-03-19 20:44:07 +02:00
Perttu Ahola
2e90ed07ac
Dynamic sky, fog and cloud colors; sun and moon
2012-03-18 13:42:18 +02:00
Perttu Ahola
5957fed9a7
Fix and improve Server's privilege get/setters
2012-03-15 15:38:59 +02:00
Perttu Ahola
6298878bfa
Add "simple singleplayer mode"; Fix a number of GUI things
2012-03-15 15:20:20 +02:00
Perttu Ahola
618314985d
Proper handling of failing to bind server socket
2012-03-11 20:45:43 +02:00
Perttu Ahola
7f7fb9750d
command-line/world game selection
2012-03-11 14:54:23 +02:00
Perttu Ahola
f1d9880006
Clean up log messages everywhere
2012-03-11 04:15:45 +02:00
Perttu Ahola
c89d1cf072
Initial directory structure rework
2012-03-10 17:10:10 +02:00
Perttu Ahola
b7fd3c8669
Add minetest.get_worldpath() for getting location for custom data
2012-02-28 20:41:26 +02:00
Kahrl
88cdd3a363
Players stay in environment even when dead, damage flash and fall damage fixes
...
Don't set m_removed on dead players (dead players are indicated by hp == 0). Local
damage flash is shown whatever the cause was (even from Lua set_hp). PlayerCAO
damage flash matches duration of local damage flash. Fall damage is dealt much more consistently (this is done by disallowing jumping when speed.Y is very negative, up to now jumping could sometimes negate fall damage)
2012-02-05 12:06:55 +02:00
Kahrl
1efdc36b22
Inventory menu (with dragging) improved. Crafting is now handled via a IACTION_CRAFT inventory action.
2012-01-22 17:31:12 +02:00
Kahrl
6a76c226e1
The huge item definition and item namespace unification patch (itemdef), see http://c55.me/minetest/wiki/doku.php?id=changes:itemdef
2012-01-12 06:10:39 +01:00
Perttu Ahola
0e1f448b61
Texture cache on client (mostly made by sapier) (breaks network compatibility)
2012-01-02 13:31:50 +02:00
Perttu Ahola
103173fc9b
Add InvRef and InvStack (currently untested and unusable)
2012-01-02 01:49:38 +02:00
Perttu Ahola
bd21f00f0a
Add minetest.get_modpath(modname)
2011-12-11 16:49:40 +02:00
Perttu Ahola
5344dec760
Move ServerRemotePlayer to a separate file
2011-12-02 10:44:20 +02:00
Perttu Ahola
9d67037570
Don't send objects or map data before definitions have been sent
2011-12-02 01:18:25 +02:00
Perttu Ahola
08a10b8a6a
Remove stuff made obsolete by making players more ActiveObject-like and raise protocol version number by one (because it is not compatible at all anymore)
2011-12-01 23:55:57 +02:00
Perttu Ahola
ee0d3bacbc
Player-is-SAO WIP
2011-12-01 18:23:58 +02:00
Kahrl
2ca00fa585
Fix processing of the default_password setting. It is now actually used as the plaintext password for new users. Also add /setpassword and /clearpassword server commands that can be used by admins with the PRIV_PASSWORD privilege, and update the /help message.
2011-12-01 12:06:39 +02:00
Kahrl
d6b30dd3a5
CraftItem rework and Lua interface
2011-11-29 19:13:58 +02:00
Perttu Ahola
5c1cb01936
Make blocks to be loaded from disk when the active block area reaches them
2011-11-29 19:13:55 +02:00
Perttu Ahola
9d5b458479
Crafting definition in scripts
2011-11-29 19:13:48 +02:00
Perttu Ahola
df8346ef4d
Do not expose CONTENT_* stuff in content_mapnode.h and use a name converter wrapper in old code
2011-11-29 19:13:47 +02:00
Perttu Ahola
c0f6395cf0
Node definition names
2011-11-29 19:13:46 +02:00
Perttu Ahola
ba762bcd49
Clean mapnode.h and fix other files accordingly
2011-11-29 19:13:44 +02:00
Perttu Ahola
6da8cb00e2
Node definitions transfer
2011-11-29 19:13:44 +02:00
Perttu Ahola
45fc45a49e
Sending of textures WIP
2011-11-29 19:13:43 +02:00
Perttu Ahola
9e1c4533b8
Move tool definitions to script
2011-11-29 19:13:43 +02:00
Perttu Ahola
4b8e4dae58
Tool definition transfer to client
2011-11-29 19:13:42 +02:00
Perttu Ahola
c6fd2986d4
GameDef compiles
2011-11-29 19:13:42 +02:00
Perttu Ahola
abceeee92f
Create framework for getting rid of global definitions of node/tool/item/whatever types
2011-11-29 19:13:41 +02:00
Perttu Ahola
bfc68d3151
Scripting WIP
2011-11-29 19:13:38 +02:00
Perttu Ahola
4b6138e69b
Improve Connection with threading and some kind of congestion control
2011-10-20 23:04:09 +03:00
Perttu Ahola
78f4142f4f
Add /clearobjects
2011-10-18 00:01:50 +03:00
Perttu Ahola
07d000cc54
When granting or revoking privileges, notify the target player too
2011-10-16 20:03:43 +03:00
Perttu Ahola
74febd5c31
Handle death and respawn better
2011-10-15 14:46:59 +03:00
Perttu Ahola
9e46cbf7ea
Header file tweaking; mainly for speed
2011-10-12 13:53:38 +03:00
Perttu Ahola
e40da2341c
Fixed/extended/modified ban stuff to be good for inclusion
2011-08-12 13:11:27 +03:00
Constantin Wenger
5784c14ab7
added ipban support
...
commands:
/#ipban <nick>
/#ipunban <ip>
2011-08-12 03:37:18 +02:00
Giuseppe Bilotta
371af9c241
Notify other players of wielded item change
2011-08-11 15:22:36 +02:00
Perttu Ahola
f2051c9822
fix to the former
2011-07-30 20:10:16 +03:00
Perttu Ahola
cdadbdbd17
Server configuration is now written when "/#setting whatever = whatever" is issued.
2011-07-30 19:49:42 +03:00
Perttu Ahola
dd22ea051a
map unloading is now a whole lot better
2011-06-27 00:27:17 +03:00
Perttu Ahola
f2c26e2014
moved map generator to separate source files
2011-06-25 18:12:41 +03:00
Perttu Ahola
bbead93c1a
Reduced server CPU usage on NodeMetadata step()s. Also furnace now cooks while no players are near it.
2011-05-31 20:02:55 +03:00
Perttu Ahola
223b379348
Reduced the CPU usage of the sent block selector algorithm
2011-05-31 00:15:43 +03:00
Perttu Ahola
e81919c818
hopefully fixed the privilege problems
...
--HG--
extra : rebase_source : 9826d20176134a53ff232816a10407465d8c0f50
2011-05-29 22:34:04 +03:00
Perttu Ahola
63611932eb
player passwords and privileges in world/auth.txt
...
--HG--
extra : rebase_source : 7260636295d9068fbeeddf4143c89f2b8a91446c
2011-05-29 21:11:16 +03:00
Perttu Ahola
0af5311538
Preliminary "active block" stuff + set up test code to grow grass.
2011-05-22 17:00:09 +03:00
Ciaran Gultnieks
d4d49ee8f4
Passwords - password entry at main menu, stored and checked by server
2011-05-20 20:28:03 +01:00
Ciaran Gultnieks
248d7c8469
Improved server commands and added player permissions.
...
--HG--
extra : rebase_source : 178fe08f10b7de3ebaba088bd24faad795114216
2011-05-16 10:41:19 +01:00
Perttu Ahola
9c72d44fe7
random comment updates
2011-04-30 02:12:32 +03:00
Perttu Ahola
2830095366
Optimized map saving and sending (server-side)
2011-04-26 00:23:38 +03:00
Perttu Ahola
c638442e78
Some work-in-progress in hp and mobs and a frightening amount of random fixes.
2011-04-21 19:35:17 +03:00
Perttu Ahola
4b54b291ae
Some progress on transitioning from MapBlockObject to ActiveObject.
2011-04-08 00:47:14 +03:00
Perttu Ahola
3269fce795
Server: Only send node removal/addition to client if client's player is near it. Otherwise set the modified blocks unsent.
2011-04-06 11:02:39 +03:00
Perttu Ahola
4a92df6ff0
Chests work now!
2011-04-04 15:13:19 +03:00
Perttu Ahola
9778347c7f
mainly work on object scripting api
2011-02-23 02:49:57 +02:00
Perttu Ahola
c57637b4c3
Temporary commit; lots of test code and stuff
2011-02-21 00:45:14 +02:00
Perttu Ahola
d065bae323
Ctrl+C handling on POSIX, some commands for server and other tweaking
2011-02-15 16:11:24 +02:00
Perttu Ahola
ea6740e900
mapgen stuff
2011-02-05 14:55:16 +02:00
Perttu Ahola
64b5975732
Now texture handling is fast. Also now players are saved on disk.
2011-01-28 01:38:16 +02:00
Perttu Ahola
c914cbb0a0
OMG! Main Menu!
2011-01-23 17:29:15 +02:00
Perttu Ahola
1986326731
fixed erroneus handling of many players with no peer existing at same time
2011-01-18 00:26:09 +02:00
Perttu Ahola
d44abdab17
minecraft-style water done (but no texture animation or sound)
2011-01-17 21:15:31 +02:00
Perttu Ahola
0fa0e0752a
old water removed, some fixes here and there
2011-01-17 14:57:37 +02:00
Perttu Ahola
3891bc43e0
fine-tuning of map generator and server and stuff.
2011-01-17 02:40:53 +02:00
Perttu Ahola
3fb0d2fb65
Players are left on server while server is running. No passwords yet.
2011-01-15 03:28:19 +02:00
Perttu Ahola
6b6c2d37ea
Added a more flexible path system (and fixed some minor stuff)
2011-01-07 19:39:27 +02:00
Perttu Ahola
a26c92d7dd
disconnect method to connection to be used instead of just timing out
2010-12-24 17:08:50 +02:00
Perttu Ahola
10b06419ab
changes to handing of digging (non backwards-compatible i guess)
2010-12-23 22:35:53 +02:00
Perttu Ahola
b94a007864
some work-in-progress
2010-12-22 03:33:58 +02:00
Perttu Ahola
3f5bad938a
organizing stuff.
2010-12-21 18:08:24 +02:00
Perttu Ahola
5a36956f75
working time-of-day sending from server to client
2010-12-20 14:04:31 +02:00
Perttu Ahola
0ca9423b8b
day/night working client side
2010-12-19 16:51:45 +02:00
Perttu Ahola
15a43c5ed0
before adding day/night lighting
...
--HG--
rename : data/light.png => data/cloud.png
2010-12-18 13:10:37 +02:00
Perttu Ahola
571fb14f94
working nicely
2010-12-13 03:19:12 +02:00
Perttu Ahola
2a0d1a059e
commit before some radicallish changes to water behavior
2010-12-11 18:11:03 +02:00
Perttu Ahola
fc26dcdb19
license stuff
...
--HG--
rename : src/licensecomment.txt => licensecomment.txt
2010-11-29 20:13:04 +02:00
Perttu Ahola
d10627a77f
Windows bug fixes
2010-11-29 17:55:07 +02:00
Perttu Ahola
c707e00195
sitä sun tätä tekeillä, toimii kivasti
2010-11-29 10:52:07 +02:00
Perttu Ahola
e8fd5eb8ee
block send priority queue
2010-11-27 18:10:11 +02:00
Perttu Ahola
24c4b7c68d
Working version before block send priorization update
2010-11-27 17:18:34 +02:00
Perttu Ahola
4e249fb3fb
Initial files
2010-11-27 01:02:21 +02:00