220 Commits

Author SHA1 Message Date
Aaron Suen
18b01c1ae7 Redistribute hints into each mod
Hints themselves have not been tided up
much, but this makes the project of fixing the
hints for each mod a little more manageable
and breaks up the hard-to-navigate single
monolithic hints file in the old guide mod.

The old guide mod has now been completely
retired.  Hints are now a full-fledged API-layer
standard feature.
2020-09-04 19:07:45 -04:00
Aaron Suen
edea123a1e Start on new unified Hint API
- Move hint handling down to API layer
- Simplify stat data; old nc_stats counting can
  be moved out to a separate mod.  We only
  need whether the player has seen or not.
- Invert inventory tab responsibility.
- Merge witness system in from crafting.

TODO:
- Redistribute hint registration responsibility
  to individual mods.
- Test external mod compat.
- Retire old nc_stats and nc_guide systems.
- Add a way to reset hints.
2020-09-04 16:28:27 -04:00
Aaron Suen
78d321c24f Support explicit TP overrides for special_tiles
Hughes Ross has started to work on a PR for this
(https://github.com/minetest/minetest/pull/10140)
but it doesn't look like it will be ready until 5.4 at
least, and we will support pre-5.4 versions for
some time yet.  The ability for TP artists to
override special_tiles is necessary to allow things
like flowing liquid textures to be customized in
texture packs.

Add a hack for these, similar to how we did the
inventory/wield image hacks.

Note that we are also forcing overrides for special
tiles, since there may be cases where we reuse a
base image without modifiers but TP artists may
still want an independent override.
2020-07-04 19:25:37 -04:00
Aaron Suen
b2f78c0daa Indexing for craft checks
By restricting the recipes we check based
on the name of the central object being
checked, we can do many fewer craft
checks per item and avoid expensive
checks.
2020-06-27 12:20:35 -04:00
Aaron Suen
42f125c716 Make most recipes indexable
Register a "rootmatch" property for all
recipes that represents a broader, quicker
test for recipe eligibility.  False positives are
allowed but false negatives are not.

Since most recipes are eligible, we can
use this to build an index for fast lookups
of subsets of recipes to run and skip most
of the other ones.
2020-06-27 11:06:43 -04:00
Aaron Suen
984e87e155 Consistent ABM labeling
- Make sure every ABM has a label
- Use consistent case
- More concise names / consistent voice
2020-06-17 07:09:20 -04:00
Aaron Suen
ec822aa034 Optimize leaf decay check with caching 2020-06-17 00:54:21 -04:00
Aaron Suen
e1e92224b7 Nerf leaf decay speed to conserve ABM power 2020-06-16 21:56:23 -04:00
Aaron Suen
de22a58162 Fix eggcorn planted falling visual 2020-06-10 00:59:48 -04:00
Aaron Suen
2110bbba37 Nerf tree growth rate 2020-06-09 19:25:29 -04:00
Aaron Suen
6c640a11b1 Validate log message levels 2020-06-09 19:02:07 -04:00
Aaron Suen
a998009656 Merge branch 'master' of gitlab.com:yamanq/nodecore into dev 2020-06-09 18:57:34 -04:00
Aaron Suen
3986ee1502 Tweak eggcorn placement clent prediction
Place as an empty stack node (soon to be
replaced by the server as a non-empty one
anyway) so laggy clients can right-click with
dirt earlier.

This should mitigate Kimapr's high-latency
mass tree farming woes...?
2020-05-31 17:11:40 -04:00
Yaman Qalieh
a8147e9875 Add levels to log messages 2020-05-27 14:04:00 -04:00
Aaron Suen
94129d5067 Hack to let TP authors override inv/wield images 2020-04-05 20:35:51 -04:00
Aaron Suen
0012c2673b More scaling time definitions
Also, scaling_time completely overrides
group-based scaling time logic.
2020-03-29 08:13:41 -04:00
Aaron Suen
e7846c9348 Refac HUD api, reduce chat_send usage 2020-03-25 08:49:34 -04:00
Aaron Suen
0cb72f7f2b Updated code standards. 2020-02-27 19:11:12 -05:00
Aaron Suen
6db8d9fc26 Adjust things to work in twilight.
- Lenses no longer produce light from sun at all;
  artificial light is always needed.
- Grass and trees survive, don't do dual-time check.
- Breeze sounds work in twilight.
- Sponge drying only requires twilight, now also can
  happen under artificial light.
- Peat to grass happens under twilight.
2020-02-22 16:55:42 -05:00
Aaron Suen
c7a322941e Experimental new natural light system.
- No day/night cycle, no sun/moon.
- Get rid of clouds too.
- Skybox is now 100% texture-packable.
- Natural light diminishes with depth.

Night-time no longer disrupts gameplay topside, but
skylights are no longer useful to an infinite depth and
artificial light is necessary for all deep mining.
2020-02-22 10:38:03 -05:00
Aaron Suen
2c91f8f95d Make the log top a little less extremely square. 2020-02-20 02:21:33 -05:00
Aaron Suen
e19c9a8283 Reoptimize image. 2020-02-18 22:12:38 -05:00
Aaron Suen
bb85c4679f Misalignment. 2020-02-18 22:12:14 -05:00
Aaron Suen
484c1a337f More subdued look for molten glass, image opt. 2020-02-18 20:10:08 -05:00
Aaron Suen
2ac5403149 The last few texture tweaks. 2020-02-18 19:57:30 -05:00
Aaron Suen
df2bb58793 Finish tree + terrain textures, new "rusty" lode look. 2020-02-18 06:30:43 -05:00
Aaron Suen
bc5708b343 Bold new look for lode! 2020-02-18 00:07:59 -05:00
Aaron Suen
80ed908b6b Fix grass eating tree sprouts (again). 2020-02-16 16:11:49 -05:00
Aaron Suen
06a94e4ffb Fix leech->leach spelling 2020-02-14 21:25:25 -05:00
Aaron Suen
db5ff04b1c Composting spread catchup too. 2020-02-08 15:16:41 -05:00
Aaron Suen
3848488a30 Offline catchup for grass spreading. 2020-02-08 15:02:43 -05:00
Aaron Suen
9deb64526e Offline tree growth tweaks.
- No tick delays during tree growth.
- Tree growth near unloaded areas will be delayed
  until the areas are loaded.
2020-02-08 14:23:45 -05:00
Aaron Suen
e3f7aee3e5 Peat rarely ferments to grass under sunlight. 2020-02-07 18:48:48 -05:00
Aaron Suen
c6b3836e6b Fix a couple more non-16x-TP-non-comapt textures. 2020-01-22 23:22:16 -05:00
Aaron Suen
21874672f1 Fix bad code indentation. 2020-01-21 21:37:08 -05:00
Aaron Suen
35475ab56d Fix tree growth hint. 2020-01-21 20:49:31 -05:00
Aaron Suen
7a90dab2b3 Make /growtrees work on leaves too. 2020-01-20 07:05:00 -05:00
Aaron Suen
73d2c4b5e8 Tree refinements, visible planted eggcorn.
- Make planted eggcorns evident via visual and
  description; it was too easy for new players to
  think they screwed up the recipe.
- Leaves inherit growth rate of trunk.
- Growth particles at tip of growing trunk.
- Code cleanup, refactoring, break up large files.
- Minor texture adjustments.
2020-01-20 06:50:34 -05:00
Aaron Suen
1743f02536 Make growing leaves stand out a bit more. 2020-01-19 19:44:01 -05:00
Aaron Suen
2d1179c4ad Growing leaves are now visually distinct. 2020-01-19 09:20:48 -05:00
Aaron Suen
b2e49a15d4 Make leaf spreading a soaking process too.
It's now possible to push accelerated growth from
trunks into leaves, so catch-up growth works for
entire tree.
2020-01-19 09:15:39 -05:00
Aaron Suen
68e8f24a66 Soaking ABM "push" API for tree growth.
Trunks now "catch up" growth much faster, and
there's a unified API for pushing soaking value
into a node and running a near-immediate check.
2020-01-19 08:59:48 -05:00
Aaron Suen
2d73df30e7 New API to check if air passes thru node.
Can be used for things like sponge air exposure
or environmental exposure checks.
2020-01-18 09:57:39 -05:00
Aaron Suen
a1cef375cf Hopefully fix tree growing witness hint. 2020-01-17 23:57:16 -05:00
Aaron Suen
14b249a9f0 A couple more tree growth issues.
- Offline growth lost after sprouting.
- Trunks not growing through leaves.
2020-01-17 23:41:41 -05:00
Aaron Suen
9de5fcfb5a Fix tree growth intrusion.
- Tree trunk growth now stops if blocked.
- Fix eligibility check for /growtrees cmd.
- Tree trunk growth rate now API-ified.
2020-01-17 13:38:59 -05:00
Aaron Suen
7bc1a4ddad Standardize node placement sounds.
Add node placement sounds to processes
missing them, like tree growth.
2020-01-16 22:02:59 -05:00
Aaron Suen
ab754e6d6e Leaf decay fixes, reinstate /growtrees.
Make growing leaves decay the same way
that normal ones do if the trunk is removed
before leaves finish spreading.
2020-01-16 21:43:07 -05:00
Aaron Suen
dea880fc3f Oops, nerfed the wrong abm. 2020-01-15 23:36:05 -05:00
Aaron Suen
1c8c3298c6 Cleanup, better offline catch-up. 2020-01-15 23:10:18 -05:00