686 Commits

Author SHA1 Message Date
Aaron Suen
d43b8cbcda All lode cooking recipes work on nodes in placed form too. 2019-09-07 12:00:33 -04:00
Aaron Suen
9a75f4c87a More flexible burning API.
Stone, lode, and lux tools now all have their handles burn, and
eject the non-flammable portions of the tool.

Now using a unified on_ignite hook for when flammable things catch
fire.  The call is made BEFORE the node is replaced, and has an
opportunity to look at node metadata and eject anything
non-flammable.

It can be a function, e.g. for shelves, or a static value in the
same format that the function would return (e.g. for lode tools
which need string values for temper substitutions).

If it returns a string or itemstack, it will eject that from the
position where the node burned.  If it returns a table it will
eject all the values of that table.
2019-09-07 11:28:51 -04:00
Aaron Suen
6385ce9843 Allow picking stone chips out of non-loose cobble too. 2019-09-07 10:56:43 -04:00
Aaron Suen
0921e9991c More issue cleanup.
Comb through issues.  Shelve some of them.  Fix a couple.
Add some ideas and reorganize/recombine others.

Lux tools should infuse in any open container, so shelves should
work fine too.
2019-09-07 10:11:23 -04:00
Aaron Suen
247bebe417 Finally break up the nc_items monstrosity. 2019-09-07 09:44:30 -04:00
Aaron Suen
0c9544d6b5 Some scaling/particle cleanup, make scaling particles distinct. 2019-09-07 09:32:36 -04:00
Aaron Suen
310ce1bc6c Treat NodeCore as a unified thing.
- Collapse all nodecore "core" mods in the /mods listing, so it's
  easier to find the actual add-on mods.
- Parameterize in-game branding to make renaming derivatives just
  a little easier.
2019-09-07 09:08:57 -04:00
Aaron Suen
a74829cf5c Make this a public API. 2019-09-06 19:26:39 -04:00
Aaron Suen
3b25121324 Nerf lux tool durability.
3x the uses of lode was way too much.  1.5x before needing a
recharge sounds a little better.
2019-09-05 23:17:17 -04:00
Aaron Suen
07d381624e Tree growth noises.
If trees are gonna suddenly blast out of the ground, then they
should make a sound worthy of that.
2019-09-05 23:01:06 -04:00
Aaron Suen
7f9c9bef1e Cleanup docs. 2019-09-05 22:49:40 -04:00
Aaron Suen
0bf2e6923e Remove debugging code. 2019-09-05 22:49:07 -04:00
Aaron Suen
cbf035e0d5 Finished Soaking API, converted trees and infusion to it. 2019-09-05 22:48:30 -04:00
Aaron Suen
253ccad3e2 Infuse slower farther from the source. 2019-09-05 21:31:16 -04:00
Aaron Suen
97884bc58e Flux must flow OVER tool to infuse. 2019-09-05 21:14:24 -04:00
Aaron Suen
45cf7fe67d Yet another Discord note-to-self dump. 2019-09-05 21:10:13 -04:00
Aaron Suen
596eb1421c Move wishlist to root.
Now all public docs are in root, and docs dir is just
for dev stuff.
2019-09-05 19:54:55 -04:00
Aaron Suen
71469e3990 Fix a couple bugs/warnings. 2019-09-05 07:36:28 -04:00
Aaron Suen
39b3a1e89c Increase darkness required. 2019-09-04 23:45:16 -04:00
Aaron Suen
86d5a808c6 Only work in relative darkness. 2019-09-04 23:44:58 -04:00
Aaron Suen
2737b7847d Add fairly subtle cherenkov radiation effect. 2019-09-04 23:40:13 -04:00
Aaron Suen
d616c5ad66 Change how silktouch is defined.
- Leave it nil to use the default (5 levels over).
- Set it to false to disable (always drop_in_place).
- Set it to a custom set of groups to skip drop-in-place if the
  tool would be able to dig a node with those groups.
2019-09-04 20:33:37 -04:00
Aaron Suen
33d717b522 Docs update. 2019-09-04 19:12:16 -04:00
Aaron Suen
3dd2092945 Exempt a few materials from ever being silktouch-dug this way.
Stone should be made via concrete.  Tree stumps should only be
made by growing trees.
2019-09-04 19:09:42 -04:00
Aaron Suen
f74b7b3767 "Silk Touch" effect for tools 5+ levels over material.
Tools up to and including Tempered Lode should still behave the
same.  Lux tools should now be able to skip the "loose" stage of
some materials.
2019-09-04 19:04:19 -04:00
Aaron Suen
befd1c0b67 Remove debugging code. 2019-09-04 19:04:07 -04:00
Aaron Suen
d9ff4f0406 Add Lux Flux fluid and Lode tool infusion. 2019-09-04 18:44:08 -04:00
Aaron Suen
f0b4a9a686 Fix touchtip showing "Air" in client/server race.
Reported by MagikEh.
https://discordapp.com/channels/507234450615042048/530756875839340574/618628052066238495
2019-09-04 18:23:30 -04:00
Aaron Suen
3a4bfdb258 One last refactor to ambient sounds.
Make tree sounds managed by the mod that defines the nodes in
question using register_ambient, consistent with other things like
fluids.

nc_envsounds is now responsible for just the air moving and
cave dripping sounds made by air itself.

Common windiness logic moved into api layer.
2019-09-02 11:34:14 -04:00
Aaron Suen
25b2831826 Add cave dripping, rename environment sound mod one more time. 2019-09-02 11:24:03 -04:00
Aaron Suen
7e1dba5073 Remove debug drawtype. 2019-09-02 11:20:02 -04:00
Aaron Suen
1904805516 Crash fix. 2019-09-01 23:27:54 -04:00
Aaron Suen
ca0508a005 Fix cycle variation math, short-circuit y <= 0 2019-09-01 23:24:37 -04:00
Aaron Suen
c9035f55d8 Add open-air wind sounds, consolidate wind ambiance. 2019-09-01 23:18:53 -04:00
Aaron Suen
42744c9512 Added sounds to the wishlist. 2019-09-01 16:15:41 -04:00
Aaron Suen
f7e68d1eb7 Rebrand as "puzzle/adventure".
This game is pretty hard to classify.  In principle it's sort of
like those old classic point-and-click "adventure" games where you
wander an open world, getting things and trying to use things on
other things, until you find combinations that do something
interesting and useful.

The game is mostly focused on "exploration" but not necessarily the
"traveling long distances over land" kind, but often the "exploring
the working principles of things" kind.
2019-09-01 13:48:10 -04:00
Aaron Suen
996ff95836 Freshen screenshot, shrink packaged screenshot.png. 2019-09-01 12:26:22 -04:00
Aaron Suen
007ccf081d Fix smoke API for external mods (nc_reative crash). 2019-09-01 12:18:13 -04:00
Aaron Suen
ae4003b6de Remove debugging code. 2019-09-01 10:18:22 -04:00
Aaron Suen
46c8a6d555 Add wind ambiance to trees, varying with altitude. 2019-09-01 10:07:48 -04:00
Aaron Suen
c17ab3cc1d One last minor reduction in new ore density. 2019-09-01 00:01:14 -04:00
Aaron Suen
a771c2d2fe Don't care about specific player in scaling; any player will do. 2019-08-31 22:17:38 -04:00
Aaron Suen
28efc0cbce Wishlist cleanup... 2019-08-31 15:26:24 -04:00
Aaron Suen
ce80cf7a19 Make sure we don't accept t = 0 as a valid start time. 2019-08-31 10:32:07 -04:00
Aaron Suen
859b70fab5 Track tree-growth while player is distant.
As long as the game clock is running, even if the area is not
loaded and processing ABMs, tree growth will "catch up" when the
area gets loaded.

I was hoping to build a time-integrated "soaking API" to deal with
this and short-circuit the box-mueller calculation to do model the
soak as time-continuous in O(1) time, but this is good enough to
get the expected behavior for now.

If I add more long-term time-integrated stochastic processes (i.e.
not just cooking recipes) then I can do the refac at that time.
2019-08-31 10:27:29 -04:00
Aaron Suen
442a6f89ef Cosmetic text change.
Feels like this chapter name should be longer to be
consistent with the other ones.
2019-08-31 10:04:15 -04:00
Aaron Suen
665c62e2f8 Add some guidelines (non-binding) to contrib. 2019-08-31 09:51:36 -04:00
Aaron Suen
39dea8a2ae MAJOR: Code quality audit using luacheck.
- Removed lots of unused variables, a few shadowed identifiers.
- Removed a few sections of dead code.
2019-08-31 09:26:53 -04:00
Aaron Suen
939f544eaf Code format cleanup. 2019-08-31 08:27:59 -04:00
Aaron Suen
80a2f8277c Be even more conservative about using stackfamily merge logic. 2019-08-31 08:02:06 -04:00