aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Add new ContentParamType2 "CPT2_DEGROTATE"est312015-10-04
| | | | | | | | | This might break some mods, but it is important for all uses of the param2 to be documented. This doesn't need a serialisation version or network protocol version change, as old clients will still work on new servers, and it is bearable to have new clients getting non rotated plants on old servers.
* Allow setting chunksize in core.set_mapgen_paramskwolekr2015-10-04
|
* Hide mapgens from main menu not intended for end userskwolekr2015-10-04
|
* Add emerge completion callback mechanismkwolekr2015-10-04
| | | | Major refactor of emerge.cpp and Map::init/finishBlockMake
* doc: Update node callback documentationkwolekr2015-10-04
|
* Remove redundant code in player interact handlerkwolekr2015-10-04
|
* Define and use limit constants for Irrlicht fixed-width typeskwolekr2015-10-04
|
* Added minetest.wallmounted_to_dirFernando Carmona Varo2015-10-04
|
* Fix MinGW 32-bit buildShadowNinja2015-10-03
|
* Add get_biome_id(biome_name) callbackDuane Robertson2015-10-02
| | | | | | | It returns the index used in mg->biomemap for a given biome name. The biomemap is useless without this unless you re-register all existing biomes, which could cause problems for anyone else trying to use biomemap. With this, you can quickly create a lookup table of ids and names.
* Add environment variable MINETEST_WORLD_PATHSmallJoker2015-10-02
| | | | Also add PATH_DELIM for Windows compatibility.
* Mapnode: Replace rotateAlongYAxis with improved versionparamat2015-10-02
| | | | | | Get facedir by using lowest 5 bits of param2 and limiting to 23 More robust, frees up higher param2 bits for other uses Change lookup table and table index to u8
* Fix some SRP issuesest312015-09-30
| | | | | -> Remove memory allocation bugs -> Merge changes from upstream, enabling customizeable memory allocation
* Some map border related fixesest312015-09-29
| | | | | | | | | | | | | 1. Check for entity addition success in spawn_item implementation 2. Check for success in item_drop callback, so that the player doesn't lose the item if they are outside bounds and try to drop it. 3. When existing player joins game, check that their position is inside map bounds. If not, set their position to the return value of findSpawnPos(). 4. Make findSpawnPos() respect the border 2 fixes a lua crash if a player drops an item outside map bounds. 3 fixes an assertion crash if a player leaves when being outside map bounds, and then rejoins.
* Don't serialize StaticObjectList with > 65535 objectsKahrl2015-09-29
| | | | | | | | | | Because the count is serialized as u16, this would cause overflow. If minetest later deserialized a mapblock with an incorrect static object count, it would be unable to find the NameIdMapping (which comes after the StaticObjectList) and abort with an error such as "Invalid block data in database: unsupported NameIdMapping version" (issue #2610).
* Decorations: Remove error message 'chunksize not divisable by sidelen'paramat2015-09-26
| | | | | | | Sidelen larger than 16 is essential for low density decorations With sidelen > 16 chunksize may not be divisable by sidelen if chunksize is changed, in this situation setting sidelen = chunksize is desirable and should not create error messages.
* Abort at uncatched exceptionsest312015-09-27
| | | | | | | | | | | | | | | Change a remaining assert(0) call to FATAL_ERROR(msg). There was a regression since commit ced6d20295a8263757d57c02a07ffcb66688a163 "For usages of assert() that are meant to persist in Release builds (when NDEBUG is defined), replace those usages with persistent alternatives" where when an "uncatched" exception is thrown inside a "side thread", the program doesn't abort anymore. This led to the problem @netinetwalker experienced where the emergethread got an unhandled exception for loading a mapblock while redis was loading, (see #3196) and then jmped outside its loop to work down its queue. This resulted in the server not doing any emerges anymore.
* Fix redis erroring on non found blocksest312015-09-26
| | | | | | | | | | Thanks to @netinetwalker for spotting the error, proposing a fix, and testing it. Error due to @est31's merging changes to PR #3202 to add more error reporting for invalid reply types, commit: 524a7656e3e5cd671b05c13e2ad69cb84bad0423 "redis: throw error if block request failed" Now we branch out on the valid reply type "not found".
* FindJson: use PATH_SUFFIXES jsoncpp to find incdirIgor Gnatenko2015-09-26
| | | | For example, on Fedora systems jsoncpp headers is installed in `/usr/include/jsoncpp`.
* Fix falling through nodes on world load (fixes #2784)Christof Kaufmann2015-09-26
| | | | | | | | | | | On world load the collision code can not see node boxes, since the nodes have not been loaded. Thus it collided only at the next full node. However, standing on a slab on world load leaded to sinking into it until the world finished loading. Then one maybe fell further, if the node below was not walkable. Now, with this commit, when no node around the player has been loaded it simply does not move the player.
* Clarify radii and distance types in documentationTim2015-09-26
| | | | | | | | | Because not all circles are round: * circles using an euclidean metric are what we usually call "round" * circles using a maximum metric look like euclidean rectangles with equal adjacent sides (squares) * circles using a manhattan metric look like an euclidean right angled rhombus (squares, but 45° rotated to the former one) [ci skip]
* Update .gitignore to ignore symlinks to non-static Minetest directories and ↵Tim2015-09-26
| | | | | | sort into an editor section [ci skip]
* redis: throw error if block request failednetinetwalker2015-09-26
| | | | | | Fixes #3196. Before, we didn't throw an error, and the engine thought the block isn't occupied. But in fact it might be that redis is still loading, and the block does exist in the database. The result was a cheesy map.
* Add /emergeblocks command and core.emerge_area() Lua APIkwolekr2015-09-23
|
* Save and remove player by pointerLoic Blot2015-09-23
| | | | | | Why doing things simple ? Use pointer instead of strings to save players and remove them. Saving players by name does a lookup to find pointer we already have ! Idem with removePlayer Also remove unused removePlayer(peer_id), it's never called
* Mapnode: Add rotateAlongYAxisFull supporting 24 facedirsparamat2015-09-22
|
* Replace "self program" with "this program" in fstk boilerplatesest312015-09-21
| | | | ... and remove trailing whitespace.
* Fix another typo in doc/world_format.txtKahrl2015-09-21
|
* lua_api.txt: fix typoest312015-09-21
| | | | Thanks to @kaadmy (NeD) for pointing this out.
* Various style cleanups + unused code removalest312015-09-19
| | | | | | | | | | -> Don't pass pointer to whole IGameDef to NodeMetadata constructors and deserializers, but only to IItemDefManager, which is needed -> Remove the unused content_mapnode_get_new_name() method -> Fix style for MapBlock::deSerialize and MapBlock::deSerialize_pre22, improving accuracy of error messages a bit -> Fix style at other serialisation methods too -> Improve accuracy of some comments
* Little optimization on getAdded/Removed activeobjects per player loop.Loic Blot2015-09-19
| | | | | Use std::queue instead of std::set, we don't need such a heavy container. Don't convert position to int to convert it back to float in the next function.
* Mgv5/6/7: Re-add #include profiler.h as commented-out optionparamat2015-09-19
|
* Blob ore: Fix partial blobsparamat2015-09-19
|
* Document current node metadata formatest312015-09-18
| | | | | | Document the node metadata changes of the commit (serialisation version >=23): 704782c95b8a4194a9383da55d93f37fd0f7278f "WIP node metadata, node timers"
* Send proper block to old clients for swap_node callsest312015-09-17
| | | | | | | | | | | The legacy code added in commit d879a539cd19ddd1ee34afec2512fb2238de2822 - "Add minetest.swap_node" for sending the whole mapblock to older clients on the case of a node modification with swap_node, had the problem that the block chosen to be sent to the client was referenced with node coordinates and not with block coordinates, resulting in getting the wrong block sent to the client.
* Ore: Add puff ore typekwolekr2015-09-17
|
* Fix object position border checkingest312015-09-16
| | | | | Borders have to be converted into BS format in order to be accurately comparable to object positions.
* Disallow placing entities outside safe boundariesest312015-09-15
| | | | | | | | | | | | Entity positions are serialized as F1000. Disallow placing entities outside safe borders with the minetest.add_entity call. Note that this patch only enforces those boundaries for placing entities, moving entities that move outside boundaries aren't affected. Thanks to @nanepiwo for pointing this out.
* Firelike drawtype: Improve codeparamat2015-09-14
| | | | | | Remove unusable fine rotation by param2 Remove unused and redundant code Fix code style issues
* Minor tweaks handle_settings_buttonsRui9142015-09-14
|
* Fix "make install" and add underscore to doc file nameest312015-09-14
| | | | | | | | Fix regression since commit: 915807f8db1f3721ad9ffc00a4863ad940010c45 "Rename doc/mapformat.txt and update doc to match SRP changes" And add an underscore to doc file name to make it more readable.
* Serialisation: documentation fixes, clarifying renames and whitespace fixesest312015-09-14
| | | | | | | | | | | | | | | 1. Do two renames: * SER_FMT_CLIENT_VER_LOWEST -> SER_FMT_VER_LOWEST_WRITE * SER_FMT_VER_LOWEST -> SER_FMT_VER_LOWEST_READ Now the two define values are consistently named with the _WRITE defines SER_FMT_VER_{HIGHEST,LOWEST}_WRITE, and to better point out what the two serialisation versions actually are for. 2. wrap some lines in doc/worldformat.txt, and point out that the node timers are serialized at a later point, as this can cause confusion about what now happens (if one doesn't strictly read the if block's conditions). 3. some whitespace fixes in NodeTimerList::serialize, and one new comment.
* Rename doc/mapformat.txt and update doc to match SRP changesest312015-09-14
| | | | | | | | The documentation file contains not just information about the map itself, but also about further files inside the world's directory. Documentation didn't reflect recent SRP addition, now it does.
* Ore: Add ore sheet column height range selectionkwolekr2015-09-13
| | | | | | | | Modders are now able to select the range of ore column height, and the midpoint at which they 'grow' starting from. This commit adds three new parameters for the 'sheet' ore type: column_height_min, column_height_max, and column_midpoint_factor. clust_size is now deprecated for this ore type.
* Run updatepo.shest312015-09-12
| | | | | | After this, it should hopefully not record line numbers anymore, so the diffs of updatepo.sh runs are smaller. Well, this is theory, lets see how it will turn out to be in practice.
* Translated using Weblate (Esperanto)Tim2015-09-12
| | | | Currently translated at 100.0% (270 of 270 strings)
* Translated using Weblate (Hungarian)Kisbenedek Márton2015-09-12
| | | | Currently translated at 91.1% (246 of 270 strings)
* Translated using Weblate (Russian)Alex “XShell” Schekoldin2015-09-12
| | | | Currently translated at 100.0% (270 of 270 strings)
* Translated using Weblate (Russian)Alex “XShell” Schekoldin2015-09-12
| | | | Currently translated at 100.0% (270 of 270 strings)
* Translated using Weblate (Indonesian)Muhammad Rifqi Priyo Susanto2015-09-12
| | | | | | Currently translated at 98.1% (265 of 270 strings) Penerjemahan