645 Commits

Author SHA1 Message Date
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
Aaron Suen
a570cb51a6 Doc cleanup. 2019-08-31 00:10:34 -04:00
Aaron Suen
f24c308eaf Fix crash. 2019-08-30 23:54:33 -04:00
Aaron Suen
ae801ce047 Lux is now working correctly again, reenable! 2019-08-30 23:49:09 -04:00
Aaron Suen
7d1d1e9602 Fix a long-standing race condition bug in limited_abm processing.
ABM action calls are delayed until a background timer picks them
up, but it passes in the original args and assumes that the nodes
haven't changed.  In addition, it bypasses our bug #8378 hack,
because that check is done in the abm action call but NOT the
background worker timer.

Do a check in the worker to make sure the node to be acted on has
not changed since the call was queued, and just let the call miss
and waste in that case.

Note that this automatically implicitly handles any #8378 issues
that may still be present since it has to force a fresh check of
the node to be operated on anyway.
2019-08-30 23:49:00 -04:00
Aaron Suen
4334f18abc Disable lux reactions due to engine bug.
Minetest abm node changes race with node
digging/placing by player.  This was somewhat
noticeable with fire sometimes deleting nodes
used to snuff the fire, but with lux it's much more
damaging, since it allows a player to very easily
duplicate lux.
2019-08-30 23:07:18 -04:00
Aaron Suen
3c5d7e200b "Family" stacking API
If items have a common "stackfamily" property in definition, then
they combine stacks; name and metadata are effectively ignored and
any name is considered acceptable for the combined stack name.

This is used by Lux to allow it to stack naturally instead of the
player having to lay them out spaced on the ground to "cool" them
all to the same level, since all Lux changes dynamically anyway.
2019-08-30 22:36:44 -04:00
Aaron Suen
f877dcf08b Lux reacts to neighbors in carried and stack form too. 2019-08-30 21:35:43 -04:00
Aaron Suen
cd1b9d377a Lux reacting to neighbors. 2019-08-30 20:58:19 -04:00
Aaron Suen
0947c3ea27 Add just one more level of lux cobble to even out numbers... 2019-08-30 20:36:53 -04:00
Aaron Suen
5600b1da43 Add Lux ore (basics), update notes. 2019-08-30 20:32:14 -04:00
Aaron Suen
ee3679661f Image optimization. 2019-08-29 20:20:59 -04:00
Aaron Suen
d8b8b6a35d Fix ASCII logo. :-) 2019-08-29 07:12:06 -04:00
Aaron Suen
b564333e16 CDB cleaned up. 2019-08-29 06:32:25 -04:00
Aaron Suen
c5cb298bd1 Documentation overhaul.
- Move design principles back into docs (needs cleanup).
- New player-oriented README content.
- Clean up issue/wishlist docs a bit (some things are no longer
  relevant).
2019-08-29 06:19:39 -04:00
Aaron Suen
47f5e17560 Scaling handholds should disappear when node under is dug. 2019-08-28 21:22:45 -04:00
Aaron Suen
458043fa18 Make ezschematic from tree growth into a full-fledged API.
I may use this for other companion content.
2019-08-27 21:41:03 -04:00
Aaron Suen
fe2c153f9e Clean up all lua code style.
Formatting rules based on Paul Kulchenko's perl-based formatter...
http://notebook.kulchenko.com/programming/lua-beautifier-in-55-lines-of-perl
...using a single tab for indent.

Mostly pure whitespace changes.
2019-08-27 19:14:51 -04:00
Aaron Suen
be4c10efd5 Comb through docs one more time... 2019-08-27 07:35:47 -04:00
Aaron Suen
ac4a0be4b7 New experimental "tips" tab in guide.
Hopefully not too spoilery?

This should fulfill our need for a new player FAQ, and is based
on questions that I have actually been asked by new players.
2019-08-27 07:33:58 -04:00
Aaron Suen
da7eae09cd Disable the now-long-useless /kill command. 2019-08-27 07:33:38 -04:00
Aaron Suen
3495311aef Player can now climb overhangs with enough patience. 2019-08-27 07:32:44 -04:00
Aaron Suen
aa1c5d860f Fix some warnings.
- Missing "local" in translation code.
- Super-long-standing warning about duplicate aliases via oldnames.
2019-08-27 07:31:45 -04:00
Aaron Suen
35cac87a78 The /stuck command is now obsoleted (probably) by cliff scaling. 2019-08-26 23:17:47 -04:00
Aaron Suen
353462eddd Add ability to scale sheer walls.
Pummel on the face of a wall you can't dig with your bare hands
and eventually you will find handholds there, allowing you to
climb.

This will hopefully provide an immersive alternative to /stuck
for getting out of pits, which will also make players have to
carefully extricate themselves from their situations instead of
just using /stuck to bail and then running home to come back
with supplies.
2019-08-26 23:14:16 -04:00
Aaron Suen
d1ff1d400c More succinct translation to better fit screen. 2019-08-26 21:27:12 -04:00
Aaron Suen
9ac63cac09 Padding hack to prevent text cutoff. 2019-08-26 21:26:13 -04:00
Aaron Suen
5a07edbb5a Player Guide Translations
- Fix tab switching events for formspecs.
- Add padding to fix cutoff text rendering issue.
- Added more pt and pt_BR translations from Terifo.

Note that when you call translate() on a piece of
text, it merely adds translation tags around it to
request that it be translated client-side, but when
the client submits formspecs, the button values are
the actually translated text, which you can't
trivially access server-side.  That means that we
need to use different button fields, not just count on
different button name/values, for events.
2019-08-26 21:02:06 -04:00
Aaron Suen
8a0319e7d1 Fix new player guide translations... 2019-08-26 01:01:58 -04:00
Aaron Suen
c439a46792 Allow translations of player guide GUI too. 2019-08-26 00:45:09 -04:00
Aaron Suen
bc7b449b05 Translations to Portugese by Terifo. 2019-08-25 19:06:16 -04:00
Aaron Suen
12b580ade0 Fix touchtip translations to cover ALL text. 2019-08-25 18:53:22 -04:00
Aaron Suen
349e8a0a35 Fix wet agg drawtype to appear correct when next to water. 2019-08-24 06:55:25 -04:00
Aaron Suen
14b45a3b1b Cheaper, but more complex, doors.
Wooden doors now use a cheap wooden axle (though
you still need lode to chisel them).  All doors must now
be lubricated with graphite (coal) before driving in the
hinge pin.
2019-08-24 06:44:36 -04:00
Aaron Suen
560b068bd7 Fix crafting, standardize recipe callback params. 2019-08-24 06:31:27 -04:00
Aaron Suen
3656936b92 Docs cleanup. 2019-08-23 23:32:53 -04:00
Aaron Suen
dcb5c8b8a1 Water also prevents curing. 2019-08-23 23:20:05 -04:00
Aaron Suen
0c02eec17f Rework concrete curing to work a lot more like glass. 2019-08-23 23:16:59 -04:00
Aaron Suen
f4aa27299e New concrete mod provides access to smooth-stone.
Bash gravel down into ash to produce dry aggregate.

Dampen the aggregate to produce wet aggregate.  The ash chemically
reacts with gravel to produce a cement.

Let the wet aggregate dry and it will cure into smooth-stone.
It will tend to flow and wander if left uncontained though.
2019-08-23 22:45:08 -04:00
Aaron Suen
bba8edfc39 Lower sponge water TTL. 2019-08-23 21:42:48 -04:00
Aaron Suen
86ecd96cc9 One more tweak to sponge mechanic.
Water is now squeezed out, can be reabsorbed, BUT might disappear
before being reabsorbed anyway.  The original sponge can be
removed, though, and the water will just disappear on its own
after the timeout.
2019-08-23 21:39:54 -04:00
Aaron Suen
a2fa61b77f Alternative sponge mechanic.
When squeezing a wet sponge, it doesn't become dry, but must
remain wet and in place, and the water source it places lives only
a short time.
2019-08-23 21:36:11 -04:00