105 Commits

Author SHA1 Message Date
Aaron Suen
76b74ae465 Merge branch 'master' into optics 2019-03-05 23:18:38 -05:00
Aaron Suen
3bb18e195e A little refactoring... 2019-03-05 23:05:56 -05:00
Aaron Suen
47fc0a958c Fix. 2019-03-05 20:57:51 -05:00
Aaron Suen
81aac617a4 Fix item duplication bug. 2019-03-05 20:55:22 -05:00
Aaron Suen
3b08a8ee9a Documentation updates, new player guide interface.
Also restructured the player_inv/player_setup thing AGAIN.
Now setup is all rules and inv is all interface.
2019-03-05 19:20:38 -05:00
Aaron Suen
3a299e712f Some minor API cleanup (celebrating 5.0 release). 2019-03-04 19:33:55 -05:00
Aaron Suen
a6b454b1a3 Fix items being deleted on sneak-dig.
Cannot change the wielded item because this is overwritten between
getting and handling node drops, so we can only sneak items into
the other slots.
2019-03-03 16:46:30 -05:00
Aaron Suen
3ef32c0206 Sneak-digging an item stack prefers keeping the stack separate.
This is allows you to split a stack by throwing individual items
with sneak-drop, letting them settle into a single stack, and
then sneak-digging the stack to keep it separate in your inventory.

This makes it possible to split stacks into arbitrary quantities
without having to use the inventory GUI.
2019-03-03 16:22:02 -05:00
Aaron Suen
3bef72b665 Unify detecting old version of MT. 2019-03-03 12:08:47 -05:00
Aaron Suen
ab2132a035 Fix shelf not accepting ANY items. 2019-03-02 22:53:28 -05:00
Aaron Suen
5a83a15b48 Definitively block placing shelves/totes inside shelves. 2019-03-02 21:41:25 -05:00
Aaron Suen
0635ccd5ac Fix bad global. 2019-03-02 19:35:36 -05:00
Aaron Suen
08a6a484d1 Make facial recognition distance linear with light level. 2019-03-02 19:33:34 -05:00
Aaron Suen
d1e52fb303 Tote bug fixing.
The major bug was the lode heating/cooling logic wiping out the
tote's inventory when it was sitting in a stack node.

Also setup description text.
2019-02-28 23:47:36 -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
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
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
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
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
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
fc53bdd72e Fix recipe check mutability bugs. 2019-02-23 02:05:41 -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
dd9100ad1e Slow down choppy tools significantly.
Axes were way too powerful, and apparently even stone axes were
digging trees way too fast.  Make this closer to the speed of
digging stone instead of the speed of dirt.  Make higher-tier
tools more useful here.
2019-02-21 10:00:36 -05:00
Aaron Suen
52368c1d9b Fix pummel working on count>1 stacks when it shouldn't. 2019-02-21 09:52:27 -05:00
Aaron Suen
05737fcf30 Fix placement delay on crafting. 2019-02-21 09:46:26 -05:00
Aaron Suen
c0d031eb24 Create initial node defs for sponges. 2019-02-16 19:34:53 -05:00
Aaron Suen
50875fc9d8 FINALLY finish converting remaining pummel stuff. 2019-02-10 00:25:57 -05:00
Aaron Suen
b5bd67d5a7 Finished pummel-craft API, started converting recipes. 2019-02-09 22:44:56 -05:00
Aaron Suen
05d4d52eb4 Survey of how we're using pummels right now. 2019-02-08 21:12:10 -05:00
Aaron Suen
33cbce23e5 Merge branch 'master' into refac1 2019-02-04 20:16:54 -05:00
Aaron Suen
d39b3a3949 Move version handling into base API. 2019-02-04 20:15:33 -05:00
Aaron Suen
d67f736ac5 Merge node_is into match. 2019-02-03 12:44:33 -05:00
Aaron Suen
2b8cc8fba2 Finished refactoring crafting into a separate mod.
Appears to work with existing functionality.

Next step will be to rework pummel to use a "recipe" system and
reuse most of the useful parts of the crafting system.
2019-02-03 12:10:27 -05:00
Aaron Suen
ef8a756f8e Workaround https://github.com/minetest/minetest/issues/7020 2019-02-03 09:47:42 -05:00
Aaron Suen
f98e8be5c2 Started a large refactor project.
The idea is to merge the pummel logic with crafting recipes,
and move them up out of plain old api.
2019-02-03 09:00:09 -05:00
Aaron Suen
c100ff30c0 Weird typo. 2019-01-30 21:45:07 -05:00
Aaron Suen
9ef8b8520f Rip out the snooper and consolidate statistics/knowledge yet again.
Nobody was using the snooper; not worth the bother to host it.
Instead, consolidate player statistics tracking for the achievement
system.  We can still use it for statistics collection, but users
would probably have to post world dumps for that.
2019-01-30 21:02:19 -05:00
Aaron Suen
2d3b468c65 Knock out a bunch of small low-hanging issues.
- Eggcorn cleanup.  They look a little better falling out of the
  tree, and we don't have so many now.
- Crushing damage fixes.  Crushing is nuanced now, and most things
  don't smush you, and many do reduced damage.  A few may do more.
- Item stack convenience.  Items landing on a stack or right-
  clicked onto one attempt to merge into it.
- Ladders now fall (they don't connect to sides).  Use the new
  full-scale frames for ones that don't.
2019-01-29 20:41:29 -05:00
Aaron Suen
5f4e99e1a7 Change the look of loose nodes.
Make it clear that they're separated from neighbors by dark
border, instead of just looking a littler "sandier".
2019-01-28 23:40:44 -05:00
Aaron Suen
0004d4aaf1 New version numbering scheme, updated plans. 2019-01-28 23:13:21 -05:00
Aaron Suen
37f5c0a0de Laid the groundwork for metal-working.
- Defined nodes, slabs, and prills of lode.
- Heating lode ore releases hot lode prills.
- Lode things in stack can air-cool to anneal or water-quench to
  harden/temper.  Cooling of placed nodes/slabs is planned.
- Hot items cannot be carried; picking them up causes damage and
  causes player to drop them.
2019-01-27 22:34:53 -05:00
Aaron Suen
cc793cdbb5 Item stack rotation tweaks.
- Random initial rotation.

- When stackable items represent a complete full stack, rotate
  about 1/3 as fast as normal.  This subtle cue helps organizing
  storage by finding available space, but you still need to pick
  up the stack if you want an EXACT count.
2019-01-27 01:40:39 -05:00
Aaron Suen
f1247827b3 Remove yet more debugging code. 2019-01-26 23:02:10 -05:00
Aaron Suen
258da379be Reduce excess particles. 2019-01-26 23:01:34 -05:00