993 Commits

Author SHA1 Message Date
Aaron Suen
eeff1d530c Use standard framed mesh for lode crates too. 2019-12-08 16:47:51 -05:00
Aaron Suen
ce58f8294c Refactor shelf API/assets into its own module. 2019-12-08 16:41:59 -05:00
Aaron Suen
a53030cdcf Use a mesh instead of nodebox for shelves.
In principle this should be equivalent to 2 cuboids
instead of 6.  In practice, FPS improvements are
hard to measure.
2019-12-08 16:13:44 -05:00
Aaron Suen
00f8a47dda Added glass tank recipe. 2019-12-08 14:59:57 -05:00
Aaron Suen
b7ec766c0a Merge branch 'dev' into glasstank 2019-12-08 14:52:28 -05:00
Aaron Suen
564034b77a More notes. 2019-12-08 10:41:27 -05:00
Aaron Suen
ac773ace20 Merge branch 'dev' into glasstank 2019-12-08 09:22:49 -05:00
Aaron Suen
80340d9058 Sneak-dig tote handle to leave shelves behind. 2019-12-08 08:26:58 -05:00
Aaron Suen
d4b512cd1e Sneak-punch shelves inspects without taking. 2019-12-07 23:12:34 -05:00
Aaron Suen
a54d868cc3 Start work on glass tank. 2019-12-07 22:45:34 -05:00
Aaron Suen
dd0cf19784 Centrally fix water z-fighting on ALL nodeboxes. 2019-12-07 22:24:09 -05:00
Aaron Suen
dd531e7894 Don't auto-repack non-repackable nodes, e.g. leaves. 2019-12-07 20:18:46 -05:00
Aaron Suen
cd95102b34 Fix item ents not being saved on unload. 2019-12-07 18:32:23 -05:00
Aaron Suen
e99c72154d Shelf standarization and tweaks.
- Refactor common code.
- Allow placement of wood shelves inside lode crates.
2019-12-07 18:25:05 -05:00
Aaron Suen
88896b8337 More notes about builtin entity mess. 2019-12-07 12:55:34 -05:00
Aaron Suen
2f9a4f0cb5 Displace items on falling force settle.
We were assuming that falling_nodes would settle in an
orderly fashion and just calling the node placement code, but
not the displacement of old nodes.

Make sure that things aren't destroyed in the landing zone.
2019-12-07 12:48:18 -05:00
Aaron Suen
d514f8f56d More dynamic item settling random management.
Instead of shuffling all the shells once for each tick used,
shuffle only those shells actually used once per tick.  This
should save us more time in common cases where we need
to only check a few shells to find a place to settle.
2019-12-07 11:26:10 -05:00
Aaron Suen
e0f2cb5b6d Item settling overhaul.
- Always prefer closest place first, then lowest height.
- Simplify search order; use a pre-built order instead of scan.
- Randomize search order only once per tick, if used.
2019-12-07 11:12:55 -05:00
Aaron Suen
75df6f61b0 Docs reorg. 2019-12-06 07:12:24 -05:00
Aaron Suen
5b0459e4bb Speed adjustment settings for many long-running processes.
Many processes that have a significant speed/time component can
now have speeds adjusted (as a multiplier from base rate) via
settings.

Things that can be adjusted:
- Tool speeds (including digging and pummeling)
- Cooking and pummel recipe durations
- Soaking processes like tree growth, peat fermentation

The settings are hierarchical, so groups of rates can be
adjusted together, and a further multiplier can be applied to
each member of the group.

The settings are calculated dynamically, for power users only,
and documenting them is out of scope for the project.

Specifically, this should help tuning for Kimapr's SkyBlock, and
possibly other mods involving signficant gameplay rebalancing.
2019-12-06 07:01:12 -05:00
Aaron Suen
65ae771168 Fix minetest.rotate_node ignoring force-place. 2019-12-06 01:50:24 -05:00
Aaron Suen
ae3b150814 One more TouchTip fix... 2019-12-05 22:57:52 -05:00
Aaron Suen
40f724a86d Nil guard touchtips. 2019-12-05 22:50:38 -05:00
Aaron Suen
20b5b25e0c Debounce touchtips.
- Defer update until tick, coalesce updates from same tick.
- Behaves more stably when pulling items from shelves.
- Prevents flicker.
- Wield changes supersede node touch (esp shelves).
2019-12-05 22:41:47 -05:00
Aaron Suen
658100cd7e TouchTip overhaul.
- Support centered multiline descriptions.
- Automatically include visinv stack descriptions.
- Translations per-line.
- API for custom TouchTips.
2019-12-05 22:26:44 -05:00
Aaron Suen
04d8e07a39 Merge branch 'master' into dev 2019-12-04 21:00:06 -05:00
Aaron Suen
873cd10c3f Stop lenses z-fighting with water. 2019-12-04 20:59:55 -05:00
Aaron Suen
3fd83b8bf7 Gated prisms are just a tiny bit brighter. 2019-12-04 19:51:39 -05:00
Aaron Suen
05aeb6dfaa Stop lenses z-fighting with water. 2019-12-04 19:35:35 -05:00
Aaron Suen
c0eeb997c3 This issue is cleared enough. 2019-12-04 19:23:24 -05:00
Aaron Suen
17cb5d0d41 Make note of remaining tote issues. 2019-12-04 08:36:43 -05:00
Aaron Suen
b180912f0e Run AISMs inside totes. 2019-12-04 08:30:37 -05:00
Aaron Suen
48191eb0c2 Close some optics issues. 2019-12-04 00:17:31 -05:00
Aaron Suen
74b8a5cee0 Reverse lens active/shining bias.
Prefer shining state when fed from below even if given
sunlight above.  This should make open-air circuits
easier to build and less likely to act up under sunlight.
2019-12-04 00:17:07 -05:00
Aaron Suen
0a2dd7842f Give the gated prism its own special state. 2019-12-04 00:16:07 -05:00
Aaron Suen
a03d13f9fc Larger, more consistent lens selection box. 2019-12-03 23:56:59 -05:00
Aaron Suen
161b580dea Cubify prisms, consistent selection box. 2019-12-03 23:49:08 -05:00
Aaron Suen
03d512b850 Added ideas to backlog. 2019-12-03 20:57:42 -05:00
Aaron Suen
d4dd7a00a4 Slow down optic door operation.
This prevents catapults from missing their empty signal.
2019-12-03 20:21:09 -05:00
Aaron Suen
f54117718b Spread passive optic checks across multiple ticks. 2019-12-03 08:01:33 -05:00
Aaron Suen
4ee34d4b2d Fix major optics performance bug.
Optic checks were being propagated unconditionally in loops,
causing nearly every node in an optic network to be checked every
time.

This restores behavior to the original intended behavior of
propagating forward changes on next tick, but stopping at points
where state quiesces.

Unfortunately beam obstruction sensing has been working
instantaneously because of this bug, and that will revert to the
original intended behavior of having those picked up only on
random checks, which may cause regressions in some builds.
2019-12-03 07:57:22 -05:00
Aaron Suen
c8a4f3d369 Record issues from discord/streams. 2019-12-03 07:47:22 -05:00
Aaron Suen
6b4f1064a2 Make firestarting sparks a bit denser. 2019-12-01 19:23:24 -05:00
Aaron Suen
0281b2b890 Totes provide only limited fire protection.
When a tote is "burned" it will eject any flammable
container nodes, and their contents, to be exposed to
the fire
2019-12-01 17:00:09 -05:00
Aaron Suen
a695ac4071 Fix runaway shelf-item fires. 2019-12-01 16:54:15 -05:00
Aaron Suen
d0afb15f1c Add sparks to stick firestarting.
This should provide a visual clue as to WHERE players
should put tinder to get it to catch properly, since this
seems to be a common problem players run into.
2019-12-01 13:10:49 -05:00
Aaron Suen
db5a005296 Nerf conservation of fuel to prevent crashes. 2019-12-01 12:58:38 -05:00
Aaron Suen
58d2be5410 Make some hot-potato items place on landing. 2019-12-01 12:57:35 -05:00
Aaron Suen
4f5d830052 Clean up the backlog a bit.
Not doing the infused piezoelectrics, since doors make
a perfectly passable button and are more interesting
gameplay-wise than a magic signal node.
2019-12-01 12:41:55 -05:00
Aaron Suen
6e1f3fee94 Standardize intra-line spacing in code. 2019-12-01 11:08:12 -05:00