44 Commits

Author SHA1 Message Date
Aaron Suen
1b9b20c80b Initial proof-of-concept writing system.
It's barely usable/playable.

I'm not happy with how disjoint it is from the existing crafting
system, for little gain; there's a lot of on_nodepunch logic that
was added for this.

It also doesn't play very well.  Major issues:
- Awkward collision with existing logic, e.g. taking things from
  shelves, then drawing on side of shelf.  Probably need a group
  specifically for writable sufaces.
- Single action to rotate through all glyphs is bad.  Probably
  want one to change through the 8 shapes, and another to change
  rotation/reflection.
- Erasure is awkward, inconsistent, and not necessarily reliable.
  Should make it possible to recover charcoal in most cases, and
  use a unified set of hooks for it...

Should glyphs be pointable and run logic directly on node, or
should we keep it point-through...?
2019-04-01 19:15:01 -04:00
Aaron Suen
fbff15e2fe MAJOR fire api/logic rework.
- Expanded fire api, added "check" varieties of things that also
  perform relevant checks for eligibility.  Standardized testing
  for ventilation.
- Snuff embers to coals as fuel.
- Fuel is consumed randomly by flames.  This means that fuel that
  are surrounded by flame burn out quicker, while flames
  surrounded by fuel consume fuel from each node slower.  This
  adds subtlety to furnace design for efficiency.
2019-03-31 20:54:38 -04:00
Aaron Suen
85f87d1c17 Simplify some selectionboxes significantly. 2019-03-30 21:23:02 -04:00
Aaron Suen
fb63ad0a82 Fix some optics unloaded-area crashes. 2019-03-24 23:15:25 -04:00
Aaron Suen
c44d9879bd Cut down on log noise from optics. 2019-03-24 19:52:14 -04:00
Aaron Suen
e08e017e04 Stop excess optic rechecks on ignores. 2019-03-24 18:24:37 -04:00
Aaron Suen
8a8533a8fc Convert lode to new cooking recipe system. 2019-03-22 22:55:30 -04:00
Aaron Suen
da54ec1815 Start to unify cooking/cooling into recipe system. 2019-03-22 21:55:02 -04:00
Aaron Suen
1b395e3589 Lava-like ambiance for molten glass too. 2019-03-14 21:42:11 -04:00
Aaron Suen
66e8352889 Fluid and ambient sounds. 2019-03-14 21:35:33 -04:00
Aaron Suen
a2e68a3e71 Glass sounds. 2019-03-14 20:13:37 -04:00
Aaron Suen
9607bcc6a6 Start working on sounds, plus minor refinements.
- Clean up registered_* usage patterns.
- Reduce tendancy of leaves to create stack nodes.
  Now they tend to stack up properly in-world more often.
- Tweak damage system to create "headroom" where minor
  damage doesn't cost inv slots immediately.
- Make player hand skin color match model skin.
- Cleanup/unify grass abm logic.
- Start installing new sounds by MagikEh

Sound source:
  https://github.com/MagikEh/SoundsOfWarr
2019-03-13 23:51:59 -04:00
Aaron Suen
7cae0bd430 Clean up optic processing code. 2019-03-12 20:30:59 -04:00
Aaron Suen
8053bbc21c Transactional stability for optics.
- Make lens not flicker with light level dithering by using
  histerisis in threshold.
- Optical nodes always read the past world snapshot for creating
  the next snapshot, so there are no accidental fast paths
  through optical logic leading to glitches (hopefully).
2019-03-12 20:22:42 -04:00
Aaron Suen
1382af2fac Revert "Work around particle emission issues."
This reverts commit 78f1b2971abd5c221aea272d14a052d5fe65df00.

Turns out I was testing on an outdated client.
2019-03-10 03:48:44 -04:00
Aaron Suen
78f1b2971a Work around particle emission issues.
Seems like minetest doesn't behave very well on trying to spawn
more than 1 particlespawner during a single tick.

Work around this so smoke comes out correctly...
2019-03-10 03:32:59 -04:00
Aaron Suen
e51b301888 Fix some :get_meta()/.get_meta() bugs. 2019-03-10 01:31:06 -05:00
Aaron Suen
50869403e0 Unified soaking/cooking API, smoke particles for cooling too. 2019-03-10 01:00:57 -05:00
Aaron Suen
1f932edab4 Add smoke particles to cooking recipes as they stand now.
Like pummeling, this should give feedback when players are doing
something right.
2019-03-10 00:24:16 -05:00
Aaron Suen
0f0377da52 Make lens/prism light pass thru sunlight_propagates nodes.
This also prevents the lens from igniting them.

Made stick and staff at least as transarent as frames/ladders.
2019-03-09 19:46:52 -05:00
Aaron Suen
111338e56f Pound glass back into sand. Fix recipe prioritization for pummels. 2019-03-09 19:40:02 -05:00
Aaron Suen
122f1c1677 Lens firestarting. 2019-03-08 23:30:12 -05:00
Aaron Suen
f4657cb10a Dammit! minetest.get_meta, NOT minetest:get_meta! 2019-03-07 23:06:11 -05:00
Aaron Suen
be2bef8d3e Actually, we probably don't need to nerf the light so much. 2019-03-07 22:43:11 -05:00
Aaron Suen
1ae9408819 Nerf molten glass light emission. 2019-03-07 22:41:49 -05:00
Aaron Suen
58109d30e7 Create basic crafting recipes, completing tech tree bridge.
It should now be possible to obtain the new optical stuff given
only resources in-game.  The molten glass casting process, in
particular, should be at least a little interesing.

These recipes aren't very interesting and may be subject to
refinements in the future.
2019-03-07 22:27:38 -05:00
Aaron Suen
19bfab1c1f Glass now cools/quenches.
Almost done with this new feature; just need to craft lenses and
prisms from chroma glass...
2019-03-07 22:21:04 -05:00
Aaron Suen
bcca369cc7 Molten glass flows (source "rolls") downhill.
This will allow us to pour glass into molds for casting.
2019-03-07 22:05:37 -05:00
Aaron Suen
ed7fa1e95c Add molten glass, cook sand into it w/ fire. 2019-03-07 21:50:29 -05:00
Aaron Suen
718c31386f New name by Yanakov. 2019-03-07 19:35:01 -05:00
Aaron Suen
c0e68a24b4 Add basic glass nodes, new textures. 2019-03-07 19:26:53 -05:00
Aaron Suen
0652636e47 Remove redundant rotations, simplifying node spinning. 2019-03-07 10:04:32 -05:00
Aaron Suen
fa4ae544ad Crank abm back up again, log unloaded area issues. 2019-03-07 01:56:27 -05:00
Aaron Suen
cb78b5a334 Got immediate triggering working. 2019-03-07 01:40:26 -05:00
Aaron Suen
94082bc86a Prism and full logic basically working.
There seems to be an issue triggering events, so a lot of work
is being done by the abm to cover over this problem...

Much like my earlier work with sz_rotary, I suspect a lot of
fine-tuning will be needed.
2019-03-07 00:58:37 -05:00
Aaron Suen
e68693c062 Optic API works, lens basically works. 2019-03-07 00:35:27 -05:00
Aaron Suen
2b9ff67ee1 Plan. 2019-03-06 00:11:11 -05:00
Aaron Suen
3bb18e195e A little refactoring... 2019-03-05 23:05:56 -05:00
Aaron Suen
b10cdfaa7d Fixed. 2019-03-04 23:52:15 -05:00
Aaron Suen
15805fee3a Typo. 2019-03-04 23:51:04 -05:00
Aaron Suen
42466f557c Oops, of course, I left debug code in. 2019-03-04 23:50:33 -05:00
Aaron Suen
0d23186747 Start getting into nitty-gritty optical transmission protocol.
This is going to be a lot like sz_rotary from sztest, and one of
the more complex things to implement.
2019-03-04 23:49:16 -05:00
Aaron Suen
0e679c1bc7 Unused copy. 2019-03-04 22:22:21 -05:00
Aaron Suen
fdd92f3452 Start work on optics system, define nodes and basic appearance. 2019-03-04 22:11:09 -05:00