aboutsummaryrefslogtreecommitdiff
path: root/src/client.h
Commit message (Collapse)AuthorAge
* Performance improvement: Use std::list instead of std::vector for ↵Loic Blot2015-03-05
| | | | | | request_media, Server::getModNames, Environment::m_simple_objects. * Also remove unused Server::m_modspaths
* Remove Queue class which uses std::list and use native std::queueLoic Blot2015-03-05
|
* [Patch 2/4] Network rework: packet writing, sending and cleanupsLoic Blot2015-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NetworkPacket.cpp: * Remove some deprecated functions, we must use streaming interface * m_data converted from u8* to std::vector<u8> * Add an exporter to forge packet to Connection object * implement operator << std::wstring. n * implement operator << std::string * dynamic resize when write packet content. * fix string writing and performances. * create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Reliability * Transmit channel * Implement putRawString for some ugly char (_INIT packet), and use it. * Many packet read and write migrated * Implement oldForgePacket to interface writing with current connection * fix U8/char/bool writing * fix string writing and performances. * add some missing functions * Use v3s16 read instead of reading x,y,z separately * Add irr::video::SColor support into packets * Add some missing handlers * Add a template function to increase offset * Throw a serialization error on packet reading (must be improved) PacketFactories: * Create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Create ClientCommandFactory, used by server to get useful informations about packet processing (sending). Client.cpp: * implement NetworkPacket ::Send interface. * Move packet handlers to a dedicated file * Remove Client::Send(SharedBuffer) Server.cpp: * implement NetworkPacket ::Send interface. * Rewrite all packets using NetworkPacket * Move packet handlers to a dedicated file * Remove Server::Send(SharedBuffer) ClientIface.cpp: * Remove sendToAll(SharedBuffer<u8>) Connection.hpp rework: * Remove duplicate include * Remove duplicate negation * Remove a useless variable * Improve code performance by using a m_peers_list instead of scanning m_peers map * Remove Connection::Send(SharedBuffer) * Fix useafterfree into NetworkPacket Sending * Remove unused Connection::sendToAll Test.cpp: * Remove dead code * Update tests to use NetworkPackets Misc: * add new wrappers to Send packets in client, using NetworkPacket * Add NetworkPacket methods for Connection * coding style fix * dead code since changes cleanup * Use v3s16 read instead of reading x,y,z separately in some packets * Use different files to handle packets received by client and server * Cleanup: Remove useless includes ok @Zeno- Tested by @Zeno- @VanessaE and @nerzhul on running servers
* Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" ↵Craig Robbins2015-02-11
| | | | | | | setting * Increase performance (client) * Avoid changing a global value to solve a local problem
* Revert "Remove workaround in itemdef.cpp to enable/disable/enable ↵Craig Robbins2015-02-11
| | | | | | "enable_shaders" setting" This reverts commit d25ff8fd2592f457b91e8a61240694af3902d23f.
* Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" ↵Craig Robbins2015-02-11
| | | | | | | setting * Increase performance (client) * Avoid changing a global value to solve a local problem
* Network Layer 7 rework (Packet handling)Loic Blot2015-02-10
| | | | | | | | | | | | | | * Move networkcode to a dedicated directory * Rename clientserver.h to network/networkprotocol.h (Better name) and sanitize some includes * Create object NetworkPacket * It stores command (opcode) and data separated * It also stores peer_id * Data reading can be done by using a streaming interface * Change packet routing analysis * Remove old conditional analysis * Now uses function pointed analysis and add connection state ({Client,Server}::handlers) * Connection state permit to categorize condition to handle before analyze packets * Create a handler for depreciated messages, instead of duplicating code
* Fix local map saving when joining a local server from the server tabCraig Robbins2015-01-31
| | | | | | Disables local map saving for all local server types See: https://github.com/minetest/minetest/issues/2024
* Fix all warnings and remove -Wno-unused-but-set cflagkwolekr2015-01-18
|
* Fix memory leaks due to messed up memory handling for particles as well as ↵sapier2015-01-09
| | | | their spawners
* Performance of main client loop up to 2x faster In places, up to 3 times fasterCraig Robbins2014-12-07
| | | | | NOTE 1: This does not mean a 2x increase in framerate. Increase in fps may be up to 1-2fps NOTE 2: This local 'caching' of settings is not optimal and an alternative solution will be worked on after 0.4.11 is released
* Fix node 0,0,0 being highlighted when enable_node_highlighting == falseCraig Robbins2014-12-01
| | | | | Without this patch node 0,0,0 is highlighted when enable_node_highligting is false There is a minor lighting issue remaining, however it seems to be related to a different bug (https://github.com/minetest/minetest/issues/1887)
* Fix client "double saving" simple singleplayer local mapsCraig Robbins2014-11-26
|
* Add (optional) client-side saving of server map to disksfan52014-11-19
|
* Recalculate normals for cached meshes.RealBadAngel2014-10-21
| | | | | | Check if mesh is here before adding to meshcollector. Fix deleting the meshes.
* Allow taking screenshots of formspecs and move message to chatBlockMen2014-09-21
|
* Node highlighting.RealBadAngel2014-09-17
|
* Fix heart + bubble bar size on different texture packssapier2014-05-07
| | | | | | | Add DPI support for statbar Move heart+bubble bar to Lua HUD Add statbar size (based upon an idea by blue42u) Add support for customizing breath and statbar
* Add download rate to media progress bar (non http mode only!)sapier2014-04-29
| | | | Minor coding style fixes
* Bunch of small fixes (coding style, very unlikely errors, warning messages)sapier2014-04-19
|
* Cleanup client init states by bumping protocol versionsapier2014-04-08
| | | | | | | | | | Don't use TOSERVER_RECEIVED_MEDIA but TOSERVER_CLIENT_READY as indicatio for client ready Handle clients with protocol version < 23 (almost) same way as before Make client tell server about it's version Add client state to not send bogus player position updates prior init complete Add access to statistics information (peer connction time,rtt,version) Fix clients standing stalled in world while preloading item visuals (new clients only) Add get_player_information to read client specific information from lua
* Pass arguments by referenceSelat2014-03-12
|
* Fix rendering glitches when far from the center of the mapNovatux2014-03-04
|
* Remove lots of dead codesapier2014-02-07
| | | | | Add check for datatype overflows use native datatype indices instead of fixed 16bit/32bit ones
* Add player:override_day_night_ratio() for arbitrarily controlling sunlight ↵Perttu Ahola2014-02-01
| | | | brightness
* Add player:set_sky() with simple skybox supportPerttu Ahola2014-02-01
|
* New HUD element - waypoint.RealBadAngel2014-01-26
|
* Allow vertical axis particle rotation constraintkhonkhortisan2014-01-13
| | | | | | | Use tables for adding particles, deprecate former way. separate particles(pawner) definition, add default values, work with no arguments
* Make MutexQueue use jsemaphore for signalingsapier2014-01-10
|
* Create new instance of mesh every time it's required (Solves #703)Perttu Ahola2014-01-06
|
* Replace SimpleThread by JThread now implementing same featuressapier2013-12-15
|
* Rewrite client media download and support hash-based remote downloadKahrl2013-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Add minetest.swap_nodeNovatux2013-11-30
|
* Always use builtin JThread librarykwolekr2013-09-15
|
* Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenuKahrl2013-08-14
|
* Remove farmeshKahrl2013-08-13
|
* Add set_breath and get_breath to lua API.RealBadAngel2013-07-20
|
* Add support for IPv6proller2013-06-23
| | | | | | | 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)
* Add drowningPilzAdam2013-06-19
|
* Add progress bar to item visuals preloadingZeg92013-05-13
|
* Generalize hud_builtin_enable into hud_set_flagskwolekr2013-04-25
|
* Added support to disable built-in HUD elementsDiego Martínez2013-04-24
|
* Added offset support for HUD itemsDiego Martínez2013-04-23
|
* Added support for alignment in HUD itemsDiego Martínez2013-04-23
|
* Split HUD code off to hud.cpp, make into a class, extensive Lua HUD modificationkwolekr2013-04-18
|
* Lua HUDJonathon Anderson2013-04-18
|
* Fix nick completionPilzAdam2013-04-05
|
* Allow spawning particles from the server, from luaJeija2013-03-23
| | | | | | | | | 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
* Migrate to STL containers/algorithms.Ilya Zhuravlev2013-03-11
|
* Update Copyright YearsSfan52013-02-24
|