1020 Commits

Author SHA1 Message Date
Aaron Suen
4996081351 Fix nodes not falling when doors open below. 2019-11-02 21:11:05 -04:00
Aaron Suen
ba32ab94db Fix broken charcoal writing hint. 2019-11-02 19:03:00 -04:00
Aaron Suen
8b9ef4e7ba Door press can be used to count/eject items. 2019-11-01 22:08:51 -04:00
Aaron Suen
98c04d8508 Press only does 1 node per door body.
Not enough pressure to do 2 at a time, and this
prevents it from being trivial to keep a press from
interfering with the item path.
2019-11-01 21:02:29 -04:00
Aaron Suen
42a68a7773 Press backstop cannot be a "loose" node. 2019-11-01 20:44:48 -04:00
Aaron Suen
20e4432598 Apply "press" recipes to nodes jamming doors.
Nodes need to have a "backstop" node of some kind
holding them in place.  Automatically convert all
thumpy pummel recipes to press recipes too.
2019-11-01 20:42:44 -04:00
Aaron Suen
6f3bb30825 Fix rake taking credit for hand-digging nodes.
When you have a thing in your hand that doesn't help
you dig a node, but you can dig that node by hand,
then apparently the after_use callback still seems to
trigger, causing the rake effect, and wear-out.
2019-10-31 21:33:53 -04:00
Aaron Suen
11f2dce038 Notes/planning update. 2019-10-31 09:16:30 -04:00
Aaron Suen
aebbef9720 Rake also gathers excess loose items to center.
Any items that don't fit in the player's inventory will gather
to the center of the raked area, so they can combine and pile
together for easier pickup later.
2019-10-30 07:59:36 -04:00
Aaron Suen
9dee17440e Cannot write on more surfaces.
Don't allow writing on surfaces of nodes that can transmit
light, which includes:
- Glass, which is too slick.
- Non-solids like frames, shelves, totes, which aren't flat enough.
2019-10-30 07:32:25 -04:00
Aaron Suen
42cc3a1632 Fix floating glyphs sticking to air. 2019-10-30 07:29:29 -04:00
Aaron Suen
11314033e8 Rake tool easily cleans up messes. 2019-10-29 23:20:09 -04:00
Aaron Suen
fdd881ae53 Active ItemStack Modifier overhaul.
AISM's now tick against stacks, including in piles, shelves,
and player inventories, (hopefully) efficiently compared to
the old way with separate ABMs.  Item entity support is also
possible, but not necessary yet.

This started out as a bugfix for being able to put a torch inside a
shelf, which didn't make much sense gameplay-wise.  It ended up
going quite a bit further.

- Aggregate now gets wet in stack form.  Swimming with dry
  concrete now has consequences.
- Lux reactions, radiation, and infusion should now behave more
  consistently.
- Sponges can now wet or dry in stack form, including inside
  containers.
- Torch ignition, quenching, and extinguishing is now more
  consistent regardless of context, and torches are now more
  dangerous, and can ignite things in more contexts.
2019-10-29 20:03:18 -04:00
Aaron Suen
afcce4d05d Start Active ItemStack Modifiers. 2019-10-29 07:12:01 -04:00
Aaron Suen
36f614035a Weblate updates. 2019-10-27 12:09:56 -04:00
Aaron Suen
8965ae23f7 Hint coverage update. 2019-10-27 10:25:54 -04:00
Aaron Suen
e5f54b49f6 Add witness system for cooking/soaking recipes. 2019-10-27 10:05:57 -04:00
Aaron Suen
82787786db Door recipe simplification.
- No graphite lubrication needed.
- Just insert pin instead of pounding it in.
- Pins must be inserted into end face.
- Node will not spin from using pin on wrong face.
2019-10-27 08:34:33 -04:00
Aaron Suen
ac77b41af5 Revert "Scaling overhaul."
While this makes scaling a little easier to do, it still doesn't
fix the fundamental problem of scaling being distracting and too
easy to trigger accidentally.

The "pummel" version of scaling caused some confusion when one
player accidentally triggered it trying to figure out how to get
lode out of lode ore.  The current one triggers accidentally all
the time just from tabbing out of a game with it running (e.g. it
isn't paused in multiplayer) leaving the character staring at a
wall.  While such a player WOULD have opportunity to find
handholds in the wall, we aren't differentiating between a player
who's scrutinizing a surface from one staring off into space.

The scaling needs to be made harder to trigger accidentally, like
reinstating the need for an empty hand.  Using a right-click
action may also help distinguish it from pummelng recipes.

Removing this from the alpha branch so players don't get too
accustomed to this functionality and then have it change AGAIN.

This reverts commit 943604cf9588a316dce19e0a60a4219b52c4d905.
2019-10-24 20:16:37 -04:00
Aaron Suen
3e2e0526c5 Update design principles. 2019-10-23 06:37:51 -04:00
Aaron Suen
943604cf95 Scaling overhaul.
- Remove pummel recipes.  Now find handholds just by
  staring at a particular spot.  Being closer or better focused
  helps.
- Use only particles instead of a facedir node, so facedir
  isn't a problem when adjacent to multiple walls/ceilings.
- Automatically upgrade "wall" climbing to "overhang" climbing
  when a ceiling is present.
2019-10-22 01:31:09 -04:00
Aaron Suen
ec723ea6d2 Tree growth requires adequate light and space. 2019-10-19 11:00:18 -04:00
Aaron Suen
d490573659 Update docs. 2019-10-18 07:27:52 -04:00
Aaron Suen
1e2edf3f95 Make totes recyclable.
Fix minor tote recipe bug, too (make it work with
metal crates too).
2019-10-16 20:02:03 -04:00
Aaron Suen
828f4a06d9 Try to fix faling node columns.
Before, settling was being processed out of order, so nodes could
fall into the space of nodes below and kick them out as items, so a
solid column of nodes could collapse and eject some nodes as items.
This makes hopper-feeding systems a pain to use.

Instead, explicitly signal upwards (tail-recursive) to settle all
falling nodes on the same tick, since they should already be falling
and accelerating downwards in lock-step.

This isn't perfect, as there are possible race conditions with things
being added into the node-space of the falling column while it's
falling, but it seems to work for now...
2019-10-15 20:35:26 -04:00
Aaron Suen
4dfc98eaa0 Fix a long-standing inconsistency in repose logic.
In the earliest days of the game, repose was added, and at the time it
seems that the intent was to have nodes "roll" off of their perches.
This caused problems though with tree leaves wandering an unlimited
distance down grassy hillsides, so it was changed so that repose
nodes could only roll off of loose/falling nodes that were able to "tilt"
to let the above nodes come off.  Because of this, the implied action
here seems to have changed from "rolling" to "sliding", so the extra
ceiling clearance is no longer necessary.
2019-10-15 19:13:37 -04:00
Aaron Suen
96e653a5b3 Minor screenshot update, some image optimization. 2019-10-15 07:13:11 -04:00
Aaron Suen
749169a10b Subtlize and overall nerf radiation accumulation rate. 2019-10-14 19:52:19 -04:00
Aaron Suen
c8b7b8b8c8 Include fluid texture building script. 2019-10-14 07:12:46 -04:00
Aaron Suen
980db42e45 Make note of another upstream engine bug... 2019-10-14 06:37:10 -04:00
Aaron Suen
22f24f7444 Buff water attenuation, add attenuation for all other materials. 2019-10-14 06:19:45 -04:00
Aaron Suen
88292e402b Lower lux tool radiation rate significantly. 2019-10-14 06:13:48 -04:00
Aaron Suen
f9a1996811 Limit lux radiation distance, water attenuates significantly. 2019-10-14 06:11:50 -04:00
Aaron Suen
bc11435786 Drop more pre-raycast MT support. 2019-10-14 05:56:18 -04:00
Aaron Suen
608742522f Add limited support for the enable_damage setting.
If disabled, players can still accumulate radiation poisoning,
but they won't lose inventory space for it.
2019-10-13 14:32:25 -04:00
Aaron Suen
f6102b9512 Revert "Allow placing nodes against ends of doors."
There are other situations where we right-click on things and
expect a non-placement action, and that action fails.  We should
probably be more consistent about not placing in these cases, as
players may be surprised by it, and be left in trouble due to
not having a tool to dig it back up.  Requiring sneak is safer.

Now technically shelves violate this principle, but their
violation is much narrower in scope, i.e. only placement of
containers.

This reverts commit 4795a63116782fe47e72847dd308468a345b9369.
2019-10-13 13:35:49 -04:00
Aaron Suen
70388c4ceb Item duplication bug. 2019-10-13 13:30:47 -04:00
Aaron Suen
4795a63116 Allow placing nodes against ends of doors. 2019-10-13 13:28:53 -04:00
Aaron Suen
fc0ef548e5 Doors prefer centrifugal movement. 2019-10-13 13:10:42 -04:00
Aaron Suen
6092e3f20e Close issue. 2019-10-13 13:05:10 -04:00
Aaron Suen
af1f808c68 Fix player health FX auto-scaling.
Guarantee 2 usable slots no matter how many different
injury effects accumulate.

Filled slots will be shared among different damage types
roughly proportionally.
2019-10-13 12:57:57 -04:00
Aaron Suen
af42914d86 Oops, fix missing dependency, texture name. 2019-10-13 11:39:00 -04:00
Aaron Suen
402f0150b7 Lux Radiation, and player healthfx API. 2019-10-13 11:37:36 -04:00
Aaron Suen
2a77e6a852 More liberal lux cobble hint detection. 2019-10-13 10:21:30 -04:00
Aaron Suen
a4f53947a2 Official issue number. 2019-10-13 09:38:07 -04:00
Aaron Suen
8cffc156ba Workaround for another builtin bug. 2019-10-13 09:31:22 -04:00
Aaron Suen
4eb4e80bc7 Fix log splitting. 2019-10-13 09:19:08 -04:00
Aaron Suen
3701e54c81 More notes from discord. 2019-10-12 18:58:23 -04:00
Aaron Suen
c32c32ed55 Bugfix for tree growth.
Dirt was repacking around planted eggcorns, killing them.
2019-10-12 17:09:42 -04:00
Aaron Suen
3b546ef2ee Tree trunks fall, dig to logs, logs rotate. 2019-10-12 11:41:07 -04:00