Commit Graph

37 Commits

Author SHA1 Message Date
Vanessa Dannenberg 0ea4cb3848 don't bother checking dtime during globalstep
it's enough to rely in the run ratio.
2021-04-06 10:00:16 -04:00
Vanessa Dannenberg 89ca62e492 added a bunch of debugging info 2021-04-06 03:20:14 -04:00
Vanessa Dannenberg a325c2ccd8 rewrote block queue handlers to reduce code duplication
and improve lag management

minetest.conf settings added:

biome_lib_dtime_limit:

Maximum lag allowed, in seconds.  Default 0.5s.  Larger values allow for
more lag, but make map updates run a bit faster.

biome_lib_queue_run_ratio:

If positive, this is the approximate number of globalstep ticks to skip
between map updates. If negative, it becomes the positive number of map
updates to run per globalstep tick before lag is checked.  No minimum
value, maximum +100.  Default: -100 (that is, 100 updates per globalstep
tick, with none intentionally skipped).  Use positive numbers for slow
machines or biome_lib-using mods that tend to cause lag, and negative
values for fast machines and mods.
2021-04-06 03:20:12 -04:00
Vanessa Dannenberg 8ecb401309 fix a couple of missing = signs 2021-04-05 12:44:21 -04:00
Vanessa Dannenberg 9ed4858518 take the integer of that last division I added
always round up.  otherwise it'll break the `for` loop
if a mod supplies a value not divisible by 25 :-)
2021-04-01 09:02:41 -04:00
Vanessa Dannenberg 26dbbb5a67 since we split to mapblocks now,
biome.max_count as received from mods has to be scaled appropriately
as mods expect this value to be relative to the usual
chunk size of 80x80 = 6400 nodes' horizontal area.
2021-04-01 08:32:45 -04:00
Vanessa Dannenberg ec0a0f0c3b add some debugging messages 2021-04-01 07:18:28 -04:00
Vanessa Dannenberg e92361675f remove the old-plantslib-api compat thing 2021-04-01 06:24:09 -04:00
Vanessa Dannenberg 7f1fec6ae0 add compatibility for games other than minetest_game 2021-04-01 05:47:22 -04:00
Vanessa Dannenberg f569bb1fbd fix outdated "plantlife" message
and some redundancy
2021-04-01 05:03:29 -04:00
Vanessa Dannenberg f2a807b814 make debug mode a proper minetest.conf setting 2021-04-01 05:02:07 -04:00
Vanessa Dannenberg 9b7705c380 move the "registered N actions on M surfaces" message to debug 2021-04-01 04:59:57 -04:00
Vanessa Dannenberg c9f6235815 Add a function to print active/pending block counts to debug 2021-04-01 04:50:03 -04:00
Vanessa Dannenberg ddd88613e0 trim some blank lines 2021-04-01 04:34:07 -04:00
Vanessa Dannenberg 0005af6022 fix my name 2021-03-29 19:53:26 -04:00
Vanessa Dannenberg 353ca0cbd4 optimize some blocklist/actionlist checks 2021-03-28 23:10:31 -04:00
Vanessa Dannenberg d65c72d48b don't need the old non-air-above find nodes call anymore
only very old minetest engine lacks the air-above api call
2021-03-25 19:27:38 -04:00
Vanessa Dannenberg 5a910875af fix deprecated function call 2020-04-15 16:59:40 -04:00
SmallJoker 29899f2d36 Fix call to nil (function) vector.copy
Either vector.new or table.copy
NOT LIKE THIS
2019-01-07 19:37:16 +01:00
SmallJoker 0837ff7fd2 Sync with world temperature if available 2019-01-02 23:08:07 +01:00
SmallJoker ff9ce531d6 Cleanup ABM callback 2019-01-02 22:29:59 +01:00
SmallJoker fa304f9d18 Fixes 2019-01-02 22:06:07 +01:00
SmallJoker b7d69a8487 Split code and tidy up
Split to growth.lua and search_functions.lua
New function populate_single_surface for a single position check
Use 'return' to reduce indent levels
2019-01-02 20:35:39 +01:00
Vanessa Dannenberg f056d6d76e add descriptive names to ABM calls
can be specified by label= in the biome table
else biome_lib will try to make up something useful
fix #1
2018-12-01 10:51:18 -05:00
Jordan Irwin ad12e97281 Replace deprecated call to 'intllib.Getter' 2018-11-25 23:54:02 +00:00
Vanessa Dannenberg 3a6c8abb70 license fixups: use LGPL 3.0 for code,
CC-by-SA 4.0 for media and everything else
2018-11-08 18:48:38 -05:00
Vanessa Dannenberg 83a3383de0 cache {name="air"} table into a global
use it everywhere as needed
2018-10-25 10:07:13 -04:00
Vanessa Dannenberg 244dcb4822 Speed improvements
replace all set_node() and remove_node() calls with swap_node()
also move a get_node() check to later in its list of tests
to do the "cheap" stuff first
2018-10-25 09:45:51 -04:00
Vanessa Ezekowitz 8fd0789ad2 add "random return" CPU limiter to active queue playback
set `biome_lib_queue_run_ratio = <1 to 100>` to use
default 100 (basically, a percentage of max runtime).
2017-11-06 19:53:38 -05:00
AntumDeluge 03970402cf Replace deprecated methods:
- 'setting_get' with 'settings:get'
- 'setting_getbool' with 'settings:get_bool'
2017-05-13 02:09:20 -07:00
Vanessa Ezekowitz 9cdcdcfe6b don't execute the "playing out" shutdown code if log is already empty 2017-01-26 12:16:51 -05:00
Vanessa Ezekowitz e64a41fcc6 fix typo in shutdown log/block count report 2016-11-02 01:57:12 -04:00
Rogier 5b3a2e0439 Fix trees not spawning on top of surface
The bottom-most tree trunk would be missing, because the tree was
generated at ground level, instead of above ground level.
2016-07-02 12:46:46 +02:00
Vanessa Ezekowitz 5ca9e6e77d fix typo for deprecated calls 2015-08-15 16:04:38 -04:00
Vanessa Ezekowitz 68a8fe1a8a missed a couple of status messages in the rename 2015-08-09 11:18:36 -04:00
Diego Martinez f2362ed38e use alias for deprecated functions 2015-08-09 10:46:31 -04:00
Vanessa Ezekowitz 94218fb5a9 Initial commit:
split plants_lib off from plantlife modpack
renamed it to biome_lib
adapt all functions and references accordingly.
2015-08-09 10:36:01 -04:00