ngosang
f6e4c5d9cf
Respect game mapgen flags and save world noise params
2015-03-07 15:53:39 -05:00
sapier
9da99efca2
Fix RUN_IN_PLACE broken due to invalid usage of assert
2015-03-07 15:22:35 +01:00
Craig Robbins
ced6d20295
For usages of assert() that are meant to persist in Release builds (when NDEBUG is defined), replace those usages with persistent alternatives
2015-03-07 22:41:47 +10:00
Loic Blot
a603a76787
Improve Clouds::render mathematics
2015-03-07 13:27:43 +01:00
Craig Robbins
5698e2baf8
Fix Android text bug (no text displaying)
2015-03-07 20:51:07 +10:00
paramat
ffdf8dedb7
Dungeongen: Optionally set ignore to be untouchable to disable floating dungeons
2015-03-07 01:41:53 +00:00
ShadowNinja
e9eda2b0d0
Don't start a server for map migration
2015-03-06 00:20:45 -05:00
ShadowNinja
708337dfc2
Clean up database API and save the local map on an interval
2015-03-06 00:20:45 -05:00
paramat
c7454d4732
Biome API: Enable decorations placed on water
...
Add schematic decoration force placement flag
2015-03-06 03:32:15 +00:00
BlockMen
b65c7ab4a4
Improve group-based connection between raillike nodes
2015-03-05 23:24:32 +01:00
Loic Blot
40c2c18a3f
l_get_modnames: Compare using std::sort instead of a custom function which does same work
2015-03-05 20:12:54 +01:00
Loic Blot
c00eed90d3
collisionMoveSimple: use std::vector instead of std::list, this improve the performances
2015-03-05 18:08:19 +01:00
Loic Blot
6c09b34edc
ProfilerGraph: Use std::list instead of std::vector
2015-03-05 17:57:47 +01:00
Craig Robbins
daa1c30b35
Fix mapgen using unitialised height map values
2015-03-06 01:42:55 +10:00
Loic Blot
3d505b2b5f
Use std::queue for HTTPFetchRequest and std::vector for log_output instead of std::list
2015-03-05 16:21:10 +01:00
Loic Blot
9749d9fee6
Fix issue #2441 : crash on respawn, since a conversion std::list to std::vector on Environment.cpp
...
* Also change some std::list to std::vector for ClientMap::renderMap
* Remove disabled code in ClientMap::renderMap, disabled since a long time
2015-03-05 15:36:20 +01:00
Loic Blot
0d1eedcccc
Replace std::list to std::vector into tile.cpp (m_texture_trash) and move tile.hpp to src/client/
2015-03-05 11:59:40 +01:00
Loic Blot
aa474e4501
Server.cpp Use std::list instead of std::vector for playSound, fillMediaCache, sendRequestedMedia, sendMediaAnnouncement and related functions
2015-03-05 11:40:04 +01:00
Loic Blot
82482ecd9d
Server::AsyncRunStep: buffered_messages now uses std::vector instead of std::list. * sendRemoveNode and sendAddNodes are also converted as a side effect
2015-03-05 11:23:54 +01:00
BlockMen
36e8ba9ce2
Fix some rendering glitches
...
- Fixes particle draworder
- Fixes nodehighlighting
2015-03-05 10:51:18 +01:00
Loic Blot
365e4ae0fa
Performance improvement: Use std::list instead of std::vector for request_media, Server::getModNames, Environment::m_simple_objects.
...
* Also remove unused Server::m_modspaths
2015-03-05 10:44:48 +01:00
Loic Blot
b214cde5b4
Remove Queue class which uses std::list and use native std::queue
2015-03-05 16:49:51 +10:00
Craig Robbins
9e67579315
Fix memory leak in MapgenV6
2015-03-05 15:17:37 +10:00
paramat
eb7482fd73
Cavegen, mgv5: Cleanup code
...
Conf.example: Update mgv5 mapgen params
Mgv7: Lava caves only below -256
2015-03-04 23:53:58 +00:00
Loic Blot
cd684497c2
Use std::vector instead of std::list in StaticObjectList and MutexedMap::getValues()
2015-03-04 17:22:37 +01:00
Loic Blot
06f328207f
ABMHandler and player_collisions use sequential read/write. Switch from std::list to std::vector
...
* Also remove dead code Map::unloadUnusedData which is dead since a long time
2015-03-04 17:02:36 +01:00
Loic Blot
2066655aae
ClientInterface::getClientIDs doesn't need a std::list. Use a std::vector for better perfs
2015-03-04 16:30:24 +01:00
Loic Blot
7e088fdfe3
We always know playerSAO when calling SendInventory. Using it instead of searching it via peer_id
2015-03-04 15:28:33 +01:00
Loic Blot
40bf1d7b5f
Send Position packet on event, don't check it at each AsyncRunStep.
...
* This permit to cleanup the player checking loop
2015-03-04 12:19:26 +01:00
Loic Blot
7f8f9785d7
ASyncRunStep doesn't need to lock when do setTimeOfDaySpeed.
...
* 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
2015-03-04 11:46:31 +01:00
Loic Blot
1b2f64473e
Send Inventory packet on event, don't check it at each AsyncRunStep.
...
* 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
2015-03-04 11:29:39 +01:00
Loic Blot
038d3a31df
Remove unused m_wielded_item_not_sent
2015-03-03 17:36:54 +01:00
Loic Blot
7e56637ed0
Send Breath packet on event, don't check it at each AsyncRunStep
2015-03-03 16:33:20 +01:00
Loic Blot
64ff966bae
Send Player HP when setHP (or a setHP caller) is called instead of looping and testing the state change.
2015-03-03 16:06:04 +01:00
Miguel Almeida
056e8f7839
Fix occlusion
2015-03-02 12:09:02 +01:00
Craig Robbins
aefe80769b
Fix narrow_to_wide_c (ANDROID)
...
* Ensure converted string is NUL terminated
* Restore logic to that used prior to 9e2a9b5
2015-03-02 13:16:01 +10:00
paramat
773aa8c57b
Mgv6: Add heightmap. Do not make large caves that are entirely above ground
2015-03-02 02:13:43 +00:00
Loic Blot
3b1ac5b889
Revert "Fix particles draworder" (issue #2388 )
...
This reverts commit c09d026f0561ee3c6db821a7e193716f724a0e4a.
2015-02-27 14:15:24 +01:00
Craig Robbins
fdb9140825
Change find_surface_nodes_in_area to find_nodes_in_area_under_air
2015-02-27 21:42:00 +10:00
Loic Blot
0f556d0c7f
Add find_surface_nodes_in_area LUA call which permit to only get the nodes which touch air. This permit to massively improve performance for mods like plantlife
2015-02-27 21:34:33 +10:00
Craig Robbins
338e66af5f
Fix minor memory leak (Android)
2015-02-27 13:40:27 +10:00
paramat
14f7df980b
Biome API: Re-calculate biome at every surface in a mapchunk column
2015-02-26 03:35:25 +00:00
rubenwardy
d65a90a86b
Add camera smoothing and cinematic mode (F8)
2015-02-25 15:34:33 +01:00
Loic Blot
b4acac706d
Rename --do-unittests to --run-unittests as @Zeno- and @sfan5 requested
2015-02-24 08:56:52 +01:00
gregorycu
577701cabd
Optimise MapBlockMesh related functions
...
Directely or indirectly optimises the following functions:
* MapBlockMesh::MapBlockMesh
* MapBlockMesh::getTileInfo
* MapBlockMesh::makeFastFace
* MapBlockMesh::getSmoothLightCombined
2015-02-23 23:20:31 +10:00
Craig Robbins
3b6480c5b0
Fix wrapDegrees family of functions
...
wrapDegrees() (renamed to modulo360f)
wrapDegrees_0_360
wrapDegrees_180
Minor errors were present in previous versions; see issue #2328
2015-02-23 22:50:32 +10:00
Kahrl
38cf080a9c
Disallow object:remove() if the object is a player
...
Rebased by Zeno- (conflict in lua_api.txt)
2015-02-23 16:49:48 +10:00
kaeza
c5defe7a11
Add mod.conf file support This new file only permits to specify a mod name for now
2015-02-21 18:18:06 +01:00
Loic Blot
009149a073
Fix some memory leaks on packet sending.
2015-02-21 17:27:31 +01:00
Loic Blot
5a5854ea9d
Move hex.h to util/
2015-02-21 14:32:35 +01:00
BlockMen
c09d026f05
Fix particles draworder
2015-02-21 14:11:00 +01:00
Loic Blot
3998a1f8f9
Move sha1.hpp and base64.hpp to util/
2015-02-21 14:03:27 +01:00
BlockMen
aa31e3c7f3
Use skin font for usernames ( fixes #2363 )
2015-02-21 13:31:42 +01:00
Loic Blot
cf4045ff0f
Use proper CMakeLists.txt for network and client directories
2015-02-21 11:51:12 +01:00
Loic Blot
b3aeba684b
Unit tests must be done at integration process.
...
* 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.
2015-02-21 11:04:19 +01:00
paramat
38e6280552
Mgv5: Remove blobgen. Remove crumble and wetness noises
...
Add large pseudorandom caves below -256
De-link terrain level from water_level
Cavegen: Mgv5 large cave code
2015-02-21 01:43:25 +00:00
Ner'zhul
e357577cb2
Typo fix in networkprotocol.h
...
InventoryAction is in inventorymanager.h
2015-02-19 20:03:22 +01:00
est31
5a0ed780f5
Server: announce MIN/MAX protocol version supported to serverlist. Client: 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
2015-02-18 16:09:59 +01:00
BlockMen
8941ea0cc9
Increase default font_size
2015-02-18 12:51:17 +01:00
BlockMen
9a9fcfc9a3
Fix font_size under windows
2015-02-18 12:39:23 +01:00
Perttu Ahola
4d744cf87a
Use fixed size for builtin menus on non-android platforms
2015-02-18 12:33:40 +02:00
Loic Blot
27d4e89d32
Fix unused (and so, broken) enable_rollback_recording. This option must be reloaded at server loop but loaded when server starts, for data consistency (not a hot load variable)
...
ok @ShadowNinja
2015-02-18 09:28:39 +01:00
fz72
0a299fd4e5
Fix map_seed not changed when creating a new world after login to another
2015-02-18 08:57:14 +01:00
Loic Blot
2079462e62
Change many useless std::list into Environment class (m_players), ABMHandler and ActiveBlockList::update
...
This improve looping performances.
2015-02-17 16:50:03 +01:00
Kahrl
81b9c023c4
Grab GUIChatConsole::m_font, fixes segfault when changing font_size
2015-02-18 00:38:57 +10:00
Loic Blot
fd70f4f2f0
Replace std::list by std::vector into ClientMap::updateDrawList, Map::timerUpdate and ServerMap::save().
...
This will speedup the loop reading into those functions
2015-02-17 15:28:49 +01:00
Loic Blot
3c91ad8fc2
Replace std::list by std::vector into timerUpdate calls
2015-02-17 15:08:37 +01:00
Novatux
24315db6ef
Ignore old entities from 0.3.
2015-02-17 15:07:05 +01:00
Loic Blot
54487b3e70
Remove old comment from Network Rework Patch 2/4
2015-02-17 14:49:21 +01:00
Loic Blot
718bcafd51
Replace std::list by std::vector into ServerMap::listAllLoadableBlocks ServerMap::listAllLoadedBlocks and their database backends.
...
This adds a speedup on database migration and /clearobjects command
2015-02-17 14:35:44 +01:00
Loic Blot
c58d49977d
SAO: re-add old ActiveObjectTypes for a future migration layer
2015-02-17 11:37:55 +01:00
Loic Blot
f8d5af7536
SAO work: ActiveObject types & SAO cleanup * Replace u8 types with ActiveObjectType. * Merge content_object.h into activeobject.h * Remove DummyLoadSAO, it's now unused. * Remove ItemSAO, it's also unused
2015-02-17 09:09:50 +01:00
Yaman
98d80e2012
Add player direction to on-screen debug text
...
(PR Modified slightly)
2015-02-17 01:56:21 +10:00
Loic Blot
7c8793cbea
Performance Improvement: Use a cache which caches result for getFacePositions.
...
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
2015-02-16 11:27:44 +01:00
Loic Blot
ed04e8e9e4
[Patch 2/4] Network rework: packet writing, sending and cleanups
...
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
2015-02-16 11:00:55 +01:00
Loic Blot
8aebc31a17
Fix unit test if there isn't a localhost address (for example FreeBSD jails), second part
2015-02-15 14:30:34 +00:00
Loic Blot
a3e2b3e404
Fix unit test if there isn't a localhost address (for example FreeBSD jails)
2015-02-15 13:11:03 +01:00
Loic Blot
3b6b9435c5
Only do the IPv6 unit test if IPv6 is enabled
2015-02-15 12:20:37 +01:00
Loic Blot
7880ff74b6
Re-apply 4a6582c13c36cab457b78f32338c6bb4ab9ea58b broken since 146f77fdb750833c649de7159a0833c398e14a4d
2015-02-14 09:21:04 +01:00
Craig Robbins
d44cb547f2
Suppress CGUITTFONT build warnings
2015-02-13 23:54:05 +10:00
ngosang
c7a7803780
Minor fixes in translations
2015-02-12 16:41:40 +01:00
BlockMen
d302629392
Fix gettext on MSVC
2015-02-12 16:03:55 +01:00
ngosang
e102cbd840
Fix .zip extraction (mod store)
2015-02-12 15:27:20 +01:00
Loic Blot
146f77fdb7
main.cpp rework * Move ClientLauncher class to a dedicated file * ClientLauncher now owns print_video_modes and speed_tests functions (they are only called by him) * Move GameParams to shared/gameparams.h because it's shared between server and client and launcher need to know it * Move InputHandlers class to client/inputhandler.h * Cleanup includes
2015-02-12 15:00:03 +01:00
Loic Blot
a19ec3328c
Remove unused variables to make clang happy
2015-02-12 11:13:27 +01:00
ngosang
4a6582c13c
Small changes in the style of controls
2015-02-12 09:54:48 +01:00
Loic Blot
c3a23ebc28
Make Clang happy with lua lauxlib.c.
...
No functionnal change
2015-02-12 08:00:22 +01:00
est31
b2f3ffe308
Enable LUA_USE_POSIX if possible in bundled Lua
...
Fixes warning:
src/lua/src/loslib.c:60: Warning: the use of `tmpnam' is dangerous, better use `mkstemp'
2015-02-12 16:14:12 +10:00
Craig Robbins
66efaaa983
Fix Android compile warning
2015-02-12 13:16:38 +10:00
Loic Blot
a9355284b5
Don't permit to open inventory is playerCAO isn't present. This prevent to open an empty inventory at player load. ok @zeno-
2015-02-11 12:23:14 +01:00
Loic Blot
8252e1ecd0
Fix issue #2279 . ok @zeno-
2015-02-11 10:03:29 +01:00
Craig Robbins
c8f60bd224
Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" setting
...
* Increase performance (client)
* Avoid changing a global value to solve a local problem
2015-02-11 17:45:49 +10:00
ShadowNinja
98b37e3e0d
Fix Android build of narrow_to_wide
2015-02-11 02:28:22 -05:00
Craig Robbins
f824866686
Revert "Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" setting"
...
This reverts commit d25ff8fd2592f457b91e8a61240694af3902d23f.
2015-02-11 17:01:19 +10:00
Craig Robbins
d25ff8fd25
Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" setting
...
* Increase performance (client)
* Avoid changing a global value to solve a local problem
2015-02-11 16:02:16 +10:00
Markus Koschany
cfca5f99e6
Fix FTBFS on GNU/Hurd platform
...
Minetest fails to build on GNU/Hurd due to a name clash with OSX/Apple,
both are defining the __MACH__ keyword. This commit fixes the issue.
2015-02-11 15:59:58 +10:00
Craig Robbins
caf8d2a9d1
Increase MapBlock::actuallyUpdateDayNightDiff() performance by 2-8x. ok @celeron55
...
Before patch, function consumes up to ~8% of the main server loop. After, ~0% (below level of 2 places of significance)
2015-02-10 16:23:37 +01:00
Loic Blot
bb59a8543d
Replace getPlayer(playername) by getPlayer(peer_id) in some possible cases. ok @Zeno-
2015-02-10 16:03:16 +01:00
Loic Blot
368496b612
Craftdef.cpp: Improve loop and mathematics for CraftDefinitionShaped::check
2015-02-10 14:16:28 +01:00
ngosang
dd2bb950be
Fix Exit to OS button focus in Pause Menu
2015-02-10 21:23:16 +10:00