Lucas OH
ce2380b58e
Include header files in CMake sources ( #16297 )
2025-07-12 13:23:35 +02:00
sfence
7375358afd
Fix warning in mg_decoration.cpp
2025-04-17 12:35:14 +02:00
sfence
a9c197b1e5
Expand usable range of fill_ratio to about 2.3e-10 ( #16026 )
2025-04-15 21:42:12 +02:00
Erich Schubert
78293404c7
Rename perlin noise to value noise ( #15858 )
2025-04-10 14:39:40 +02:00
sfan5
dea95c7339
Reduce transitive includes by moving a class
2025-03-30 18:17:19 +02:00
sfan5
7892541383
Various random code cleanups
2025-03-04 19:53:01 +01:00
Erich Schubert
6e995972bb
check y limits early
2025-03-03 20:33:05 +01:00
Erich Schubert
08fad862aa
Code cleanups. Function does not return deco count.
2025-03-03 20:33:05 +01:00
SFENCE
af3f696423
Code style fixes.
2025-01-21 16:29:12 +01:00
sfan5
4f800dd2b4
Change VoxelArea volume to be u32
2024-12-10 22:00:28 +01:00
sfan5
8957739cdf
Use appropriate sized type for VoxelArea extent
2024-12-10 22:00:28 +01:00
SmallJoker
480eb7d816
Mapgen: Fix biome Y calculation regression
...
BiomeGen::getNextTransitionY(y) did not guarantee the condition (y < biome_y_min)
of the next loop because the function may return the value (biome_y_min - 1).
Hence, the biome was not updated until one Y coordinate after.
2024-12-08 20:27:33 +01:00
SmallJoker
50928b9759
Mapgen: Add rudimentary unittests
2024-12-08 20:27:33 +01:00
cx384
c7fe2ee5c9
Add core.spawn_tree_on_vmanip ( #15415 )
...
This function works like `core.spawn_tree`, but spawns an L-system tree onto a VoxelManip object instead on the map.
2024-12-08 20:27:22 +01:00
cx384
88c845166c
Fix L-System trees fruit node regression ( #15513 )
2024-12-06 18:06:27 +01:00
AFCMS
e545e96d2b
Make string to v3f parsing consistent, replace core.setting_get_pos() by core.settings:get_pos() ( #15438 )
...
Co-authored-by: sfan5 <sfan5@live.de >
Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com >
2024-12-04 18:19:46 +01:00
cx384
d4378a74d3
Fix register_ore ore_type error handling
2024-11-15 11:37:17 +01:00
Erich Schubert
4c44942a39
Add weights to biomes ( #15142 )
2024-11-12 10:53:17 +01:00
veprogames
9982c56373
Replace occurences of 'forum.minetest.net' with 'forum.luanti.org' ( #15372 )
2024-11-03 15:10:58 +01:00
sfence
d849d51c2d
Replace licensing text in headers (LGPLv2.1) ( #15321 )
2024-10-28 15:57:39 +01:00
sfan5
6d5103900f
Some refactoring and fixes to VoxelArea and VoxelManip
...
In particular this validates the edges of VoxelArea and fixes
all the nonsense tests uncovered by it.
2024-10-12 22:37:17 +02:00
sfan5
3af226cb06
Refactor "Cavegen y biome check"
2024-09-06 11:30:10 +02:00
sfan5
02f40e5b0d
Fix blockseed for on_generated in mapgen env
2024-07-22 16:31:46 +02:00
sfan5
71893807b3
Call malloc_trim() regularly to improve deallocation behavior ( #14707 )
2024-06-07 16:57:30 +02:00
sfan5
87232358d3
Update some workflows to newer Ubuntu versions ( #14668 )
2024-06-03 20:39:02 +02:00
sfan5
39fd9b93c3
Introduce proper error handling for file streams
2024-05-14 18:33:08 +02:00
sfan5
bc4ab8b99e
General code refactoring/improvements in server, treegen and connection
2024-03-20 16:37:32 +01:00
sfan5
dfba79f8ff
Split servermap.cpp/h off from map.cpp/h
2024-03-20 16:37:32 +01:00
SmallJoker
a862e4290c
Script API: Fix invalid rotation of L-system trees
...
The MapNode struct fields param1 and param2 were previously
not initialized. This commit now sets them to a sane default.
2024-03-17 18:01:48 +01:00
cx384
60810c2d37
Add L-system trees as decorations ( #14355 )
2024-03-12 20:10:28 +01:00
sfan5
6ca214fefc
Introduce std::string_view into wider use ( #14368 )
2024-02-17 15:35:33 +01:00
fuzun
6cbb9193ea
Fix undefined behaviors ( #14365 )
...
* Initialize member `floats` in ContentFeatures
* Do not assign big double to u32
* Do not assign negative floating point number to unsigned integer
2024-02-15 11:05:42 +01:00
sfan5
3cac17d23e
Lua on each mapgen thread ( #13092 )
2024-02-13 22:47:30 +01:00
sfan5
e10d8080ba
Add flag to control mgv6 temple generation ( #14293 )
2024-01-30 21:52:04 +01:00
sfan5
961652c2e9
Address some clang-tidy warnings
2023-12-25 10:07:28 +01:00
sfan5
e48f15c135
Skip liquid updates in MapgenSinglenode if not applicable
2023-08-14 18:16:36 +02:00
sfan5
bf36a90579
Optimize Mapgen::updateLiquid()
...
-55% runtime in singlenode usage, which is the best case
2023-08-14 18:16:36 +02:00
sfan5
4a14a18799
Fix mapgen_v6 crashing
...
this variable was accidentally shadowed in 20b10b569
2023-07-09 20:59:57 +02:00
sfan5
20b10b5691
Refactor EmergeParams owner
2023-06-23 09:05:26 +02:00
Desour
9c348d057e
Replace the old STATIC_ASSERT macro with static_assert
2023-06-15 10:38:44 +02:00
Pascal Abresch
ba80d1ce1f
Implement check_offset for decorations
2023-06-15 10:36:46 +02:00
Riley Adams
29b7aea38b
Cavegen y biome check ( #13472 )
2023-06-05 11:59:22 +02:00
Jude Melton-Houghton
d13b12b791
Store MapEditEvent blocks in a vector ( #13071 )
2022-12-24 12:21:59 -05:00
Jude Melton-Houghton
b3ffc4b327
Add minetest.get_mapgen_edges ( #12999 )
2022-12-03 10:40:46 -05:00
Abdou-31
d1b80b462e
Fix typos and en_US/en_GB inconsistency in various files ( #12902 )
2022-11-09 11:57:19 -05:00
Jude Melton-Houghton
9676364c1f
Optimize lighting calculation ( #12797 )
2022-10-09 10:50:26 -04:00
Herman Semenov
038da00e79
Code optimizations / refactor ( #12704 )
...
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com >
Co-authored-by: sfan5 <sfan5@live.de >
2022-09-06 11:21:09 +01:00
SmallJoker
051181fa6e
Enforce limits of settings that could cause buggy behaviour ( #12450 )
...
Enforces the setting value bounds that are currently only limited by the GUI (settingtypes.txt).
2022-07-09 22:32:08 +02:00
sfan5
0b41533763
Annotate light spread functions with comments
2022-06-20 21:24:28 +02:00
JosiahWI
8e5bd82c4d
fix integer overflow in mapgen ( #11641 )
...
* fix integer overflow in mapgen
Some calculations involving the magic seed had overflow because the result of an intermediate arithmetic step could not fit in an s32. By making the magic seed unsigned, the other operand in the equation will be cast to unsigned, and possibly other operands or intermediate operands. This will result in unexpected behavior if an operand is negative, which is technically possible, but logically should not happen.
* comment noise2d bitshift
While working through the code I was momentarily concerned that the right bitshift in noise2d could fill ones in some cases. It turns out that with signed integers, this is indeed true, but this one is shifting an unsigned integer, so the behavior is as expected. I put a comment here to clarify this, in case someone else wonders the same thing down the line.
* noise2d and noise3d unittests
I have added 3 tests each for noise2d and noise3d, testing all zero inputs, a very large seed (case which caused UB in the old implementation) and some fun primes I picked for no particular reason. This should be sufficient to demonstrate that the behavior of the new implementation has not changed. I used uniform initialization because it is a good feature of C++11. Please do not explode.
* uncomment the noise2d bitshift
This reverts commit 583b77ee9f . It's a
well-defined language semantic; it doesn't need to be commented.
* code cleanliness
2022-06-03 20:51:58 -04:00