| Commit message (Collapse) | Author | Age |
|
|
|
| |
for better perfs
|
|
|
|
| |
searching it via peer_id
|
|
|
|
| |
* This permit to cleanup the player checking loop
|
|
|
|
|
| |
* setTimeOfDaySpeed already lock a mutex when modify the value, we don't need to lock all environment.
* add a fine grain lock for getTimeOfDay and setTimeOfDay to solve environment multithread modifications on this value
|
|
|
|
|
|
| |
* Call UpdateCrafting into SendInventory because this functions is only called before SendInventory
* Use Player* instead of peer_id for UpdateCrafting because SendInventory already has the Player* pointer, then don't loop for searching Player* per peer_id
* m_env_mutex don't need to be used with this modification because it's already locked before the calls
|
| |
|
| |
|
|
|
|
| |
and testing the state change.
|
| |
|
|
|
|
|
| |
* Ensure converted string is NUL terminated
* Restore logic to that used prior to 9e2a9b5
|
| |
|
|
|
|
| |
This reverts commit c09d026f0561ee3c6db821a7e193716f724a0e4a.
|
| |
|
|
|
|
| |
which touch air. This permit to massively improve performance for mods like plantlife
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Directely or indirectly optimises the following functions:
* MapBlockMesh::MapBlockMesh
* MapBlockMesh::getTileInfo
* MapBlockMesh::makeFastFace
* MapBlockMesh::getSmoothLightCombined
|
|
|
|
|
|
|
|
| |
wrapDegrees() (renamed to modulo360f)
wrapDegrees_0_360
wrapDegrees_180
Minor errors were present in previous versions; see issue #2328
|
|
|
|
| |
Rebased by Zeno- (conflict in lua_api.txt)
|
|
|
|
| |
for now
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* Remove --enable-unittests and --disable-unittests and add --do-unittests function
* --do-unittests function will exit 0 on success.
* minetest and minetestserver binaries are launched with --do-unittests in travis build.
|
|
|
|
|
|
| |
Add large pseudorandom caves below -256
De-link terrain level from water_level
Cavegen: Mgv5 large cave code
|
|
|
| |
InventoryAction is in inventorymanager.h
|
|
|
|
|
|
|
| |
check serverlist
Client now informs about incompatible servers from the list, this permits to prevent the protocol movements.
Server announces its supported protocol versions to master server
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
reloaded at server loop but loaded when server starts, for data consistency (not a hot load variable)
ok @ShadowNinja
|
| |
|
|
|
|
|
|
| |
and ActiveBlockList::update
This improve looping performances.
|
| |
|
|
|
|
|
|
| |
Map::timerUpdate and ServerMap::save().
This will speedup the loop reading into those functions
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
ServerMap::listAllLoadedBlocks and their database backends.
This adds a speedup on database migration and /clearobjects command
|
| |
|
|
|
|
| |
ActiveObjectType. * Merge content_object.h into activeobject.h * Remove DummyLoadSAO, it's now unused. * Remove ItemSAO, it's also unused
|
|
|
|
| |
(PR Modified slightly)
|
|
|
|
|
|
|
|
|
|
|
| |
This greatly reduce the number of std::list generated by caching the result, which is always constant for each radius selected.
In the callgrind map, you will see original:
* 3.3M calls to std::list for 9700 calls to getFacePositions
In the modified version, you will see:
* 3.3K calls to std::list for 6900 call to getFacePositions
Callgrind map is here: #2321
it's a huge performance improvement to l_find_node_near
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
jails), second part
|