262 Commits

Author SHA1 Message Date
Aaron Suen
67041ac54d Craft shelves in-place.
Since the recipe output count matches frame count, this is more
consistent with design intent.

Shelves can also be crafted in place this way for use in a tote.
2019-02-28 23:15:26 -05:00
Aaron Suen
229dda7714 Fix crash on placing w/ no metadata. 2019-02-28 00:30:28 -05:00
Aaron Suen
579679da2c Initial revision of a portable "tote" node.
When picked up, it carries up to 8 surrounding shelves with it,
allowing significant inventory compression into one slot.  Needs
to be placed somewhere everything fits to access the inventory
again.
2019-02-28 00:02:00 -05:00
Aaron Suen
ce46564f8e Bare stacks coalesce, but items don't fall into top of shelves. 2019-02-27 23:12:19 -05:00
Aaron Suen
aa3c33adf9 Nerf healing speed too. 2019-02-27 22:50:54 -05:00
Aaron Suen
06f28a4a7b Re-nerf death spew velocity; was kinda ridic. 2019-02-27 22:35:23 -05:00
Aaron Suen
59270e878a Idears. 2019-02-27 22:06:57 -05:00
Aaron Suen
5aed5449ad Tweak tree-gen, making them a little easier to find.
Had multiple complaints from players that trees are hard to find.
The possiblity of needing some exploration is reasonable, and we
don't want the world to be too uniform for aesthetic reasons, but
there shouldn't be much harm in making trees less frustrating
to find.
2019-02-24 23:49:24 -05:00
Aaron Suen
bfce78f06f Register missing dependency. 2019-02-24 23:33:06 -05:00
Aaron Suen
393210db69 Start proper spectator support.
Make sure that non-built-in content respects the interact priv
and prevents spectator players from doing nasty stuff.
2019-02-24 21:54:33 -05:00
Aaron Suen
f4581e61fe Fix a typo. 2019-02-24 20:29:46 -05:00
Aaron Suen
9fe3f296b9 Tree stumps can finally be ground up by lode axes. 2019-02-24 16:36:53 -05:00
Aaron Suen
96a339ff9d Make encumbrance quadratic instead of linear.
This makes it a little easier to notice when it kicks in.
2019-02-24 14:40:21 -05:00
Aaron Suen
b22616f377 Decide on a next project. 2019-02-24 14:37:19 -05:00
Aaron Suen
d22a391055 Allow grass to grow on loose soil too. 2019-02-24 14:23:42 -05:00
Aaron Suen
905f2ade60 Update notes. 2019-02-24 14:00:10 -05:00
Aaron Suen
fb75424335 Encumbered injured players walk slower.
Encumbrance is calculated from inventory slots filled (ignoring
count within stacks), compared to health; players can freely carry
the same proportion of slots as their health.

Players who are encumbered lose up to 80% of their walking speed
(i.e. for a full hotbar and no health).

This is another disadvantage for being injured, and an incentive
for players to take care of their health.
2019-02-24 13:54:58 -05:00
Aaron Suen
a3a1f441c7 Tersify some hints. 2019-02-24 11:00:26 -05:00
Aaron Suen
6e0d5a0778 Strata overhaul
- Apply stratification last in shared mapgens, so it can see all
  already-placed ores.
- Support stratification for nodes other than plain stone.
- Register lode stone and lode ore for stratification.
2019-02-24 10:19:22 -05:00
Aaron Suen
7c18b8110d Sponge nerf.
- Spawn fewer clumps.
- Spawn larger clumps.
- Spread much slower.
2019-02-23 23:29:55 -05:00
Aaron Suen
c5e6641d39 Added emergency suicide command.
Kills the player over a short span of time.  Any movement
aborts the kill.
2019-02-23 23:29:27 -05:00
Aaron Suen
510e642a53 Remove debug code. 2019-02-23 22:50:04 -05:00
Aaron Suen
44b6a1d228 Shared mapgen API, add hard stone strata. 2019-02-23 22:48:39 -05:00
Aaron Suen
2091c6621e Nudge stack ents up to prevent z-fighting w/ bottom of shelves. 2019-02-23 21:30:35 -05:00
Aaron Suen
72c2df452b Hints about sponges. 2019-02-23 20:46:17 -05:00
Aaron Suen
7771974371 Flesh out lode and shelf hints. 2019-02-23 20:45:00 -05:00
Aaron Suen
0d44601374 Fix shelf appearance under mipmapping. 2019-02-23 20:35:22 -05:00
Aaron Suen
a364e28cd2 Make shelf selection and collision boxes consistent.
This was causing weird issues with items falling "into" a shelf
and ending up stored there, leading to a few "where did my items
go" moments.
2019-02-23 20:08:40 -05:00
Aaron Suen
e2cf72282c Disallow shelf access through top/bottom. 2019-02-23 20:06:14 -05:00
Aaron Suen
9bf273fdde Fix crash on death. 2019-02-23 18:47:11 -05:00
Aaron Suen
710f5e3d7c Make death scatter items more.
Also move death next to respawn code.
2019-02-23 17:52:23 -05:00
Aaron Suen
838e6249f5 Minor hint tweaks.
- Display numerical stats too.
- Display update check reminder when out of hints.
2019-02-23 17:28:01 -05:00
Aaron Suen
b680b69cd8 Stat improvements.
- Fix cheat stat bug.
- Hook to track crafting recipe completion.
2019-02-23 17:00:42 -05:00
Aaron Suen
e6c3be714a Fix serious regression in stone-tipping tools. 2019-02-23 13:34:41 -05:00
Aaron Suen
659f1dcf2a Penalty for death: respawn with minimum health. 2019-02-23 13:20:56 -05:00
Aaron Suen
726f385e52 Add player natural healing.
- Players heal over time at variable speed, depending on subtle
  environmental factors.
- This frees us up to work on the death mechanic, since it's no
  longer the only way to restore health and prevent an untimely
  death.
2019-02-23 13:14:09 -05:00
Aaron Suen
480b999705 Make shelves easier to build.
- Double recipe yield
- Bash planks directly to sticks with mallet

- Remove debug code.
2019-02-23 10:39:38 -05:00
Aaron Suen
e303f100cf Shelves can no longer be nested.
- As a general rule, we're disallowing nesting of containers for
  now.  Only bare stack nodes may contain containers.
- Overhaul docs.  Ideas are getting out of hand, shoved a lot of
  stuff into the icebox for now.
2019-02-23 10:33:17 -05:00
Aaron Suen
58cd080fdf Apply big stack refactor. 2019-02-23 10:21:27 -05:00
Aaron Suen
94bd5a9cc8 Fix wield check again, make shelves flammable. 2019-02-23 10:00:31 -05:00
Aaron Suen
f893f613c3 API refinements.
- Make node match operate on only one of node or stack, depending
  on whether node defers to stack via is_stack_only.  This should
  hopefully prevent future pummel recipe issues.
- Add new core stack API.  Needs to be deployed in a lot of places.
- Start work on system for allowing flammable containers; they
  eject their potentially non-flammable contents.
2019-02-23 09:44:22 -05:00
Aaron Suen
f02de5719a Players cannot see each other in dim light.
Also, homage to Castle of the Winds.
2019-02-23 02:58:34 -05:00
Aaron Suen
b6650068a1 Trying to find a saner way to handle node stack recipes. 2019-02-23 02:29:16 -05:00
Aaron Suen
fc53bdd72e Fix recipe check mutability bugs. 2019-02-23 02:05:41 -05:00
Aaron Suen
63d587cf8b Missed files in prev commit. 2019-02-21 14:59:41 -05:00
Aaron Suen
0638e3f11f Crafting cleanup.
- Alternate shelf recipe to make it a little more intuitive.
- Label all existing recipes.
2019-02-21 14:37:22 -05:00
Aaron Suen
c5ebe7f35a Fix stick firestarting.
Wasn't working when wielding more than one stick/staff, due to
implied count check added to fix log-stack-splitting issue.
2019-02-21 14:27:06 -05:00
Aaron Suen
aa714cd218 Make log tracing optional, and off by default.
This can be very annoying/distracting in singleplayer.
2019-02-21 10:45:24 -05:00
Aaron Suen
4e3d359904 Limit absolute tool speed to 0.25s.
Tool speeds too high make pummeling impossible.
2019-02-21 10:24:48 -05:00
Aaron Suen
ceb95efae1 Fix itemstack repose/falling crash.
With item_eject trying to place stack nodes now instead of ents,
converting stack nodes to ents was causing an infinite loop.
Impart a tiny velocity on ents to make them ineligible for
automatic immediate stack placement.

Hacky.  Should probably have a separate API to indicate ejection
as an ent or as ent/stack or something.
2019-02-21 10:10:36 -05:00