aboutsummaryrefslogtreecommitdiff
path: root/src/network
Commit message (Collapse)AuthorAge
* Drop genericobject.{cpp,h} (#9629)Loïc Blot2020-04-10
| | | | | | | | | | * Drop genericobject.{cpp,h} This file is not for generic object but for ActiveObject message passing. Put ownership of the various commands to the right objects and cleanup the related code. * Protect ServerActiveObject::m_messages_out * typo fix
* Overall improvements to log messages (#9598)sfan52020-04-08
| | | | Hide some unnecessarily verbose ones behind --trace or disable them entirely. Remove duplicate ones. Improve their contents in some places.
* Miscellaneous networking improvements (#9611)sfan52020-04-08
| | | fixes #2862
* Connection: Fix deadlock in debug mode (#9550)SmallJoker2020-03-26
|
* Add comments for translators (#9510)Wuzzy2020-03-20
| | | | | * Add translator comments for "special" strings * Add translator comments for some "tricky" strings
* Workaround for get_player_informationSmallJoker2020-03-08
| | | | '-1' as value is handled as an error. If there are no RTT updates upon fast connect, set_player_information returned nil.
* Fix memory leak in protocol 38 set_skysfan52020-03-05
|
* Fixes around ServerActiveObject on_punch handlingsfan52020-03-05
|
* set_sky improvements, set_sun, set_moon and set_starsJordach2020-03-05
|
* Allow texture modifiers in hotbar textures. (#9271)Warr10242020-02-26
|
* Improve core.sound_play with ephemeral sounds and player exclusionsfan52020-02-01
|
* Make clipping of formspec elements more consistent (#9262)Hugues Ross2020-01-16
|
* Formspec: make bgcolor element less confusing and allow setting fullscreen ↵DS2019-12-08
| | | | color (#8996)
* Add z-index management to HUDPierre-Yves Rollo2019-12-06
|
* Rework packet receiving in ServerThreadsfan52019-11-19
| | | | | Notably it tries to receive all queued packets between server steps, not just one.
* Call on_secondary_use when object is right-clickedsfan52019-11-10
|
* Formspec: draw order and clipping for all elements (#8740)DS2019-11-07
|
* Fix broken buildsfan52019-09-23
| | | The variable name changed but this didn't cause merge conflicts, so it wasn't caught before.
* Punchwear (improved) (#8959)sfan52019-09-22
|
* Wieldhand: Specify which ItemStack to use (#8961)SmallJoker2019-09-21
| | | Makes 'get_wield_item' to return the "main" ItemStack
* Add support for per-player FOV overrides and multipliersAnand S2019-09-19
|
* Remove incorrect MutexAutoLocksfan52019-09-19
| | | | | The line declared a variable "m_con" instead of locking m_con. getClient() doesn't need this anyway, so remove it.
* Built-in formspecs: Force version 1SmallJoker2019-09-14
|
* Send ActiveObjects once right after Init2ANAND2019-09-14
|
* Formspecs: Introduce formspec_version to modsSmallJoker2019-09-14
|
* Load CSM environment after the restrictions are knownSmallJoker2019-09-14
| | | | | | | Safety-guards for CSM callbacks to abort on a bad implementation Only run callbacks when the mods are loaded (and with it: builtin) Duplication checks inside constructors
* Send cumulated inventory changes only each step (#8856)SmallJoker2019-09-09
| | | | Applies to player and detached inventories
* Inventory: Send dirty lists where appropriate (#8742)SmallJoker2019-08-24
| | | | | This change reduces the amount of sent data towards clients. Inventory lists that are already known to the player are skipped, saving quite some data over time. Raises protocol version to 38 to ensure correct backwards-compatible code.
* Remove unused function in ReliablePacketBuffersfan52019-08-16
|
* Minor refactor of IncomingSplitBuffersfan52019-08-16
|
* Drop m_list_size from ReliablePacketBuffersfan52019-08-16
| | | | It's not required and, worse, can lead to bugs.
* network: Stricter handling of split packetssfan52019-08-15
|
* network: Fix crash in ReliablePacketBuffer on mismatching packetssfan52019-08-15
| | | | | In the error condition the exception would be thrown before m_list_size is decremented, causing a nullptr dereference in e.g. popFirst().
* Better F6 profiler (#8750)SmallJoker2019-08-13
| | | | | | | Update the profiler names to make more sense of what they actually represent Move the profiler code from header to its source file Use monospace font to align lines Format the statistics line to align better with surrounding values Refresh the profiler each 3 seconds (roughly)
* Merge pull request #8776 from osjc/FixGetNodeJozef Behran2019-08-10
| | | Finish getNode cleanup
* Implement adding velocity to player from Luasfan52019-08-10
| | | | The intended usecase is knockback, but there's potential for more.
* Client::Interact: Use InteractAction enum instead of numeric constantsANAND2019-08-07
| | | | This replaces the magic numbers used as interaction modes both client-side and server-side, primarily for the sake of ease-of-readability.
* Unify wield item handling (#8677)SmallJoker2019-08-07
| | | | This moves the wield item functions to Player and the tool utils for range calculation Also 'local_inventory' was removed due to redundancy in Client
* Fix binary-string confusion in client network codesfan52019-08-04
|
* Damage: Play no damage sound when immortal (#8350)SmallJoker2019-06-09
| | | | Add isImmortal server-side for proper enable_damage handling Rework log messages
* Various network performance improvements (#8125)Jozef Behran2019-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Optimize packet construction functions Some of the functions that construct packets in connection.cpp are using a const reference to get the raw packet data to package and others use a value passed parameter to do that. The ones that use the value passed parameter suffer from performance hit as the rather bulky packet data gets a temporary copy when the parameter is passed before it lands at its final destination inside the newly constructed packet. The unnecessary temporary copy hurts quite badly as the underlying class (SharedBuffer) actually allocates the space for the data in the heap. Fix the performance hit by converting all of these value passed parameters to const references. I believe that this is what the author of the relevant code actually intended to do as there is a couple of packet construction helper functions that already use a const reference to get the raw data. * Optimize packet sender thread class Most of the data sending methods of the packet sender thread class use a value passed parameter for the packet data to be sent. This causes the rather bulky data to be allocated on the heap and copied, slowing the packet sending down. Convert these parameters to const references to avoid the performance hit. * Optimize packet receiver thread class The packet receiver and processor thread class has many methods (mostly packet handlers) that receive the packed data by value. This causes a performance hit that is actually worse than the one caused by the packet sender methods because the packet is first handed to the processPacket method which looks at the packet type stored in the header and then delegates the actual handling to one of the handlers. Both, processPacket and all the handlers get the packet data by value, leading to at least two unnecessary copies of the data (with malloc and all the slow bells and whistles of bulky classes). As there already is a few methods that use a const reference parameter for the packet data, convert all this value passed packets to const references.
* LINT fixes since recent tooling updateLoïc Blot2019-03-14
|
* Fix serialization of std::time_t by casting to u64 first (#8353)rubenwardy2019-03-10
| | | Fixes #8332
* Optimize interaction distance checker (#8193)Jozef Behran2019-03-07
| | | | | The "what" parameter is being passed by value, most likely by accident as the type is "const std::string". Convert it to a reference by adding the missing "&".
* Fix detach inventory serialisation (#8331)rubenwardy2019-03-07
|
* Fix incorrect string length check after castrubenwardy2019-03-06
|
* Fix particle spawners not visible since CSM spawner implementation (#8289)Loïc Blot2019-03-01
| | | | | * Drop the ID mapper, use a big u64 instead. This will permit to resync server ids properly with the manager code * Modernize some code parts (std::unordered_map, auto) * generate id on client part on U32_MAX + 1 ids, lower are for server ids
* Revert "Revert CSM particles commit to fix particle spawner bug for 5.0.0 ↵Loïc Blot2019-02-26
| | | | | | (#8288)" This reverts commit 01cd63bd3bca0192dab2834faf414b022706a77e.
* Revert CSM particles commit to fix particle spawner bug for 5.0.0 (#8288)Paramat2019-02-26
| | | | Reverts 5dab7426451842793b183fbd961ad2ae83c8acbd "[CSM] Add functions to create particles and particlespawners."
* Attend to LINT sillyness (#8276)Paramat2019-02-23
|