Perttu Ahola
d76957ee22
Create new instance of mesh every time it's required (Solves #703 )
2014-01-06 13:24:31 +02:00
PilzAdam
5fd92d67d5
Remove an unused function and include from client.cpp
2013-12-15 19:57:08 +01:00
sapier
e9e9fd7c3f
Replace SimpleThread by JThread now implementing same features
2013-12-15 13:39:42 +01:00
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
sapier
04e9a9d541
Cleanup jthread and fix win32 build
2013-12-01 16:25:46 +01:00
Novatux
d879a539cd
Add minetest.swap_node
2013-11-30 18:37:56 +01:00
proller
8903c68460
Correct useragent in http queries
...
Net struct init
2013-11-06 00:50:32 +04:00
kwolekr
d308352dbd
Always use builtin JThread library
2013-09-15 23:00:01 -04: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
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
proller
ac7a44792c
Masterserver mods announse, ipv6, better curl errors
2013-07-13 00:19:05 +04:00
Kahrl
b3001bcd6e
When server sends late media, log to errorstream instead of crashing.
...
Do a check for valid num_files before doing
assert(!m_mesh_update_thread.IsRunning());
In particular, don't execute the assertion if all media has already
been received.
2013-07-07 08:35:25 +02:00
Kahrl
922a30ee47
Don't rebuild the dummy shader (less SourceShaderCache warning spam)
...
Also write something about rebuilding shaders to infostream in
Client::afterContentReceived()
2013-07-05 04:24:05 +02:00
Kahrl
8161ab573f
Remove texture atlas / AtlasPointer, rename getTextureRaw to getTexture
2013-07-02 03:03:10 +02:00
proller
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
PilzAdam
53066024f6
Add drowning
2013-06-19 15:47:00 +00:00
Kahrl
96fe1de832
Add ObjectRef.hud_set_hotbar_itemcount and add TOCLIENT_HUD_SET_PARAM
2013-05-26 00:23:33 +02:00
MetaDucky
5e80df46b8
Fix typo in particle spawning
2013-05-20 16:24:07 +02:00
PilzAdam
9397b5de08
Fix memory leak in MeshUpdateThread
2013-05-18 01:52:18 +02:00
Zeg9
bda62bd3bf
Add progress bar to item visuals preloading
2013-05-13 17:08:51 +02:00
PilzAdam
5068cb40ce
Fix memory leak: remove InventoryAction after sending and applying
2013-05-11 00:12:14 +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
Diego Martínez
33dd267fd9
Fixes possible crash when using hud_change with "align" or "offset"
2013-04-23 23:18:05 -04:00
RealBadAngel
a699bdb7a1
Fix to: addUpdateMeshTaskWithEdge
...
Check in all 6 directions instead of just 3.
2013-04-23 22:30:09 -04:00
Diego Martínez
9894167bbf
Added offset support for HUD items
2013-04-23 09:34:11 +03:00
Diego Martínez
7c37b1891a
Added support for alignment in HUD items
2013-04-23 09:34:10 +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
sapier
0d26bb36af
fix memory leak in loadMedia
2013-04-07 23:40:33 -04:00
sapier
3b684d306c
fix 3d model mesh leak
2013-04-07 21:51:35 -04:00
PilzAdam
b0e6806077
Fix nick completion
2013-04-05 02:31:58 +02: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
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
MirceaKitsune
df3c925b3c
Improved Player Physics
2013-02-14 06:21:30 +10: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
PilzAdam
896e1a30b0
Fix 'longjmp causes uninitialized stack frame' in cURL
2012-12-26 21:41:00 +01:00
Ilya Zhuravlev
e9006f904c
Make m_media_fetch_threads to contain MediaFetchThread* instead of MediaFetchThread
2012-12-17 20:56:59 +04:00
Ilya Zhuravlev
3578e1d4a7
Added ability to fetch media from remote server (using cURL library)
2012-12-16 15:20:18 +04:00
MirceaKitsune
15b86a6b9b
Don't send player position from client to server if the player hasn't moved
2012-12-02 20:22:02 +02:00
Kahrl
22e6fb7056
ShaderSource and silly example shaders
2012-12-02 00:46:18 +02:00
Perttu Ahola
e3258b78e2
Add setting preload_item_visuals
2012-12-02 00:46:10 +02:00
Perttu Ahola
bee170570d
On-demand item meshes and textures
2012-12-02 00:38:26 +02:00
Perttu Ahola
ba73e75ef9
Modify some client log message levels
2012-12-02 00:24:11 +02:00
Perttu Ahola
6b927229f5
Default server step to 0.1s and sync object/player update intervals to it
2012-11-26 22:34:59 +02:00
Perttu Ahola
eca1c96412
Move util/serialize.h out from staticobject.h for smaller header dependencies
2012-11-26 11:18:34 +02:00
Perttu Ahola
197542c7ec
New PROTOCOL_VERSION scheme (allow client to support a range of versions)
2012-11-26 09:49:07 +02:00
MirceaKitsune
3d1c481f0b
RealBadAngel's patch which allows the lua api to read pressed player keys. This should make it possible to change the player's animation based on what he is doing
...
Correct lua api version number
Always update animations and attachments after the entity is added to scene client side. Fixes animations not being applied in client initialization for some reason. Attachments should be re-tested now just to be safe.
Fix a segmentation fault caused by reaching materials that didn't exist in a loop for setting texture
2012-11-25 19:14:24 +02:00
MirceaKitsune
756db8174a
A bunch of fixes
...
No longer hide players who are dead. With models, a death animation should be used instead
Some changes requested by celeron55
Rename a lot of things in the code, and use better lua api function names
Minor code corrections
Bump protocol version up, since the models / animations / attachments code creates new client<->server messages
2012-11-25 19:14:24 +02:00
MirceaKitsune
9c8ba42750
Get the mesh working through the memory cache properly. Most credit goes to celeron55 for the help on this code
...
Get the texture from memory as well
Add .x to the list of supported formats
Update LUA API documentation
2012-11-25 18:14:15 +02:00
MirceaKitsune
f9675bd2b4
Add a subfolder for models and transfer models from server to client
...
(obj, md2 and md3 are currently allowed)
Get rid of the texture string and use the existing textures array. Segmented meshes have multiple materials, and this will allow us to texture each. Do not switch to this commit yet!
If a texture string is left empty in LUA, don't modify that material. Useful so a script can change specific textures without affecting others
2012-11-25 18:14:15 +02:00
Perttu Ahola
2ac20982e0
Detached inventories
2012-07-24 20:57:17 +03:00
Perttu Ahola
4cc98d7add
minetest.register_on_player_receive_fields()
2012-07-22 17:40:48 +03:00
Perttu Ahola
16ad10e62f
Allow defining player's inventory form in Lua
2012-07-19 14:09:16 +03:00
Perttu Ahola
d0ea6f9920
Properly and efficiently use split utility headers
2012-06-17 02:40:36 +03:00
Perttu Ahola
1bc37d576c
Initially split utility.h to multiple files in util/
2012-06-17 01:29:13 +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
Perttu Ahola
d7447cdf9e
Implement sign using form field protocol
2012-06-03 22:31:01 +03:00
Perttu Ahola
22df8b81b3
Log more stuff in Client::afterContentReceived()
2012-05-19 17:11:41 +03:00
Perttu Ahola
b58ee690a3
Allow looping of local and positional sounds
2012-04-08 14:35:57 +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
Kahrl
f8c3743991
added PlayerSAO and RemotePlayer, removed ServerRemotePlayer
2012-03-29 14:05:45 +03:00
Perttu Ahola
98c40f5ee6
Switch sound randomizer postfixes from N.ogg to .N.ogg
2012-03-25 16:21:34 +03:00
Perttu Ahola
1cac1de3b2
Almost support loading sounds from server
2012-03-25 14:48:22 +03:00
Perttu Ahola
f801e16b78
Texture cache -> Media cache WIP
2012-03-25 11:51:33 +03:00
Jonathan Neuschäfer
4bf5065a9c
Cache textures by checksum
2012-03-25 11:51:00 +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
8c2f3bb378
c55sound continued
2012-03-24 04:24:25 +02:00
Perttu Ahola
c301e3c82a
celeron55's sound system initial framework
2012-03-24 04:24:23 +02:00
Perttu Ahola
7d1ac4d1f6
Profiler graph
2012-03-21 15:06:41 +02:00
Perttu Ahola
2e90ed07ac
Dynamic sky, fog and cloud colors; sun and moon
2012-03-18 13:42:18 +02:00
Perttu Ahola
58bed83d03
Move ClientMap to clientmap.{h,cpp}
2012-03-16 00:25:18 +02:00
Perttu Ahola
54917e3062
Add Client::getEnv() and remove some unnecessary wrappers
2012-03-15 23:54:10 +02:00
Kahrl
807a0d313b
MapBlockMesh, mesh animation system, urgent mesh updates, athmospheric light, removed footprints
2012-03-15 21:45:44 +02:00
Kahrl
967f25461b
Chat console, including a number of rebases and modifications.
...
Defaults modified from original: alpha=200, key=F10
2012-03-10 20:11:10 +02:00
Perttu Ahola
c89d1cf072
Initial directory structure rework
2012-03-10 17:10:10 +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
b4dd5d3bd7
Client-side prediction of inventory changes, and some inventory menu fixes
2012-01-22 17:31:20 +02:00
Kahrl
157a4cf18c
Node placement / mineral / serialization / iron freq / node_dig callback
...
- Node placement code moved to Lua
- Mineral system removed (added default:stone_with_coal and default:stone_with_iron).
- MapBlock and MapNode serialization updated.
- Mapgen: Frequency of iron increased.
- node_dig callback and related changes.
2012-01-22 17:24:50 +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
bc743ca7ce
Add missing checks to texture caching
2012-01-04 00:37:46 +02:00
Perttu Ahola
3e6f824e6c
Use free rather than delete for malloc'd memory
2012-01-02 21:42:33 +02: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
2dc9a0c724
Fix player double damage
2011-12-02 11:16:51 +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
Perttu Ahola
b6539399f4
Fix deadlock if MeshUpdateThread asks new textures while it is being stopped (happened if texture data was transferred slowly)
2011-12-01 02:41:52 +02:00
Kahrl
d6b30dd3a5
CraftItem rework and Lua interface
2011-11-29 19:13:58 +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
26abf6fd82
Cut down content transfer verbosity
2011-11-29 19:13:45 +02:00
Perttu Ahola
7696a38543
Improve loading screen and protocol
2011-11-29 19:13:45 +02:00
Perttu Ahola
6da8cb00e2
Node definitions transfer
2011-11-29 19:13:44 +02:00
Perttu Ahola
01ae0daea5
Properly update textures in node definitions
2011-11-29 19:13:43 +02:00
Perttu Ahola
45fc45a49e
Sending of textures WIP
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
1afed48a2c
Make possible and do update textures in node definitions after late texture atlas making
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
3b77a63d5d
Allocate MapBlock::m_node_metadata on heap to allow less header bloat
2011-11-29 19:13:41 +02:00
Kahrl
1c98ec94da
Make Connection::Receive return the data via a SharedBuffer reference, so the caller doesn't have to choose the right buffer size in advance.
...
Conflicts:
src/test.cpp
2011-11-07 11:21:42 +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
3a06fb8831
Fix and tune block sending
2011-10-19 02:17:23 +03:00
Perttu Ahola
558a133044
Display RTT (round trip time, ping) on client status text
2011-10-17 17:18:50 +03:00
Perttu Ahola
b65a5aceb0
Use the logger; also, default to not showing much crap in console. Use --info-on-stderr to enable crap.
2011-10-16 14:57:53 +03:00
Perttu Ahola
3f58028d31
Make dungeon masters though and make oerkkis disappear when they get to you (because hitting them doesn't work for some unknown reason)
2011-10-15 16:04:25 +03:00
Perttu Ahola
74febd5c31
Handle death and respawn better
2011-10-15 14:46:59 +03:00
Perttu Ahola
5341bf59c2
Improve mobv2
2011-10-15 12:17:21 +03:00
Perttu Ahola
43a28f04fa
mobv2
2011-10-15 02:28:57 +03:00
Perttu Ahola
9e46cbf7ea
Header file tweaking; mainly for speed
2011-10-12 13:53:38 +03:00
Perttu Ahola
061d4b4202
Merge branch 'view_bobbing_and_vielded_tool'
2011-09-26 15:10:02 +03:00
Perttu Ahola
0ccc0ac927
Merge remote-tracking branch 'darkrose/master'
2011-09-26 11:57:28 +03:00
Perttu Ahola
bdf54908aa
Make client report a newer version number to the server than 2011-07-31 does and make the server enforce it
2011-09-22 20:47:47 +03:00
darkrose
582e450bad
added locking chests - clean patch
2011-09-22 19:11:48 +10:00
Kahrl
36bcbca9ac
Added sprite extruder
2011-09-19 03:01:11 +02:00
Kahrl
71418639d3
attempting to merge Queatz/the-wielded-tool and kahrl/viewbobbing, something doesn't work right yet
2011-09-08 14:21:56 +02:00
Kahrl
baf7da9d4a
Collected and moved existing camera infrastructure from game.cpp to camera.cpp and camera.h. Introduced configuration settings 'fov' which chooses the camera's (vertical) field of view and 'view_bobbing' which currently does nothing. Other code refactored to not expect the FOV to be a build time constant.
2011-09-08 01:08:47 +02:00
Kahrl
c0b35fa429
Removed unused camera_position and camera_direction fields from Client. Moved ClientEnvironment::drawPostFx to ClientMap::renderPostFx -- this will make the camera management classes easier to write, as ClientMap already knows the camera position but ClientEnvironment doesn't and has to be told about it. This also eliminates the need for Client::getEnv(). Made the post effect color a content feature defined in content_mapnode.h.
2011-09-07 19:21:28 +02:00
JacobF
f31b0a3361
Display which tool the player is holding
...
And some simple animation when trying to dig...
2011-09-07 10:56:04 -04:00
Perttu Ahola
4acad897cf
Fixed some protocol comment errors in clientserver.h and elsewhere
...
-- TOCLIENT_OBJECTDATA: peer ID field is missing
-- TOCLIENT_ACTIVE_OBJECT_REMOVE_ADD: added: init length should be u32, not u16
2011-08-22 22:04:46 +03:00
Giuseppe Bilotta
371af9c241
Notify other players of wielded item change
2011-08-11 15:22:36 +02:00
Giuseppe Bilotta
ecd5c5f920
Clients inform server on wielded item
...
This is done with the new TOSERVER_PLAYERITEM message, that informs the
server on the index of the wielded item.
2011-08-11 15:22:36 +02:00
Giuseppe Bilotta
91d1186cbb
Keep track of player item
2011-08-11 15:22:36 +02:00
Giuseppe Bilotta
b318e82356
Refactor player's eye position coding
...
Collect the player's eye position coding in a Player method, and
use it in client to pass the eye position information to the game.
2011-08-11 15:22:35 +02:00
Nils Dagsson Moskopp
7ece67727d
Merge remote-tracking branch 'origin/upstream'
2011-07-31 20:04:04 +02:00
Perttu Ahola
e0b8e66540
Fixed problem of server always receiving an empty password from the client
2011-07-31 15:32:45 +03:00
Nils Dagsson Moskopp
96bee29e35
Merge branch 'upstream/master'
2011-07-30 19:47:55 +02:00
Perttu Ahola
24a662705c
Added network protocol version number in protocol
2011-07-30 20:02:17 +03:00
Perttu Ahola
308d861327
Merged minetest-delta a624fe549bc75855a170
2011-07-21 20:55:08 +03:00
Nils Dagsson Moskopp
3560f0de08
Merge branch 'upstream/master'
...
Conflicts:
data/oerkki1.png
src/client.cpp
2011-07-14 22:43:28 +02:00
Perttu Ahola
dd22ea051a
map unloading is now a whole lot better
2011-06-27 00:27:17 +03:00
Perttu Ahola
3fccc67eb7
fixed block unloading from memory (a better fix coming next)
2011-06-26 21:53:11 +03:00
Sebastian Rühl
9d09103e48
Merge branch 'master' of https://github.com/erlehmann/minetest-delta.git into upstream_merge
...
Conflicts:
.gitignore
CMakeLists.txt
data/heart.png
src/CMakeLists.txt
src/game.cpp
src/guiMainMenu.cpp
src/inventory.cpp
src/map.cpp
src/mapblock.cpp
src/mapnode.cpp
src/mapnode.h
src/materials.cpp
src/server.cpp
Signed-off-by: Sebastian Rühl <bahamada_basti@yahoo.de>
2011-06-26 12:24:32 +02:00
Perttu Ahola
c1ceabef71
added and commented out some debug output
2011-06-26 03:14:52 +03:00
Perttu Ahola
bb940a946d
even more code refactoring
2011-06-26 02:34:36 +03:00
Perttu Ahola
cb130d9158
cleaned map stuff
2011-06-26 00:03:58 +03:00
Perttu Ahola
7538b4c620
New map generator added (and SQLite, messed up the commits at that time...) (import from temporary git repo)
2011-06-25 04:25:14 +03:00
Perttu Ahola
02006a9540
Modified the mesh update thread's sleep time to speed it up (it was way too high)
2011-06-18 22:31:24 +03:00
Perttu Ahola
51cf464f74
Fixed the password crash on Windows
2011-06-02 00:01:11 +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
Ciaran Gultnieks
a8a3271470
Added the ability to change your password (via pause menu)
...
--HG--
extra : rebase_source : e8ec407f60711d42d33be4811b2880088f617b5b
2011-05-22 21:09:12 +01:00
Perttu Ahola
0af5311538
Preliminary "active block" stuff + set up test code to grow grass.
2011-05-22 17:00:09 +03:00