2149 Commits

Author SHA1 Message Date
Aaron Suen
65dc1fe58f Start working on some hint reform
Got through a bunch of mods, up next is optics.

- Try to use crafting recipes rather than resources as
  the criteria for completing a hint.
- It's okay to use simple item observation for specific
  cases of transient things like pliant concrete.
- It's also okay to still use simple observations for the
  eligibility checks.
- Simple observation is also okay for naturally occuring
  e.g. decay processes, like wilting flowers, as opposed
  to crafts that need to be completed.
2021-12-16 22:31:50 -05:00
Aaron Suen
fb76d23f36 Expand peat grinding to groups
- Use groups so it's easier for mods to add things
  that can be ground into peat.
- Pretty much all flora can be ground into peat as well.
2021-12-16 20:47:13 -05:00
Aaron Suen
32df131204 Merge branch 'master' into dev 2021-12-15 21:48:55 -05:00
Aaron Suen
f26cea0067 More images caught by the optimizer 2021-12-15 21:46:42 -05:00
Aaron Suen
1175aa0339 Fix missing back faces on flowing liquids 2021-12-15 21:36:20 -05:00
Aaron Suen
080aed561e Fix crash 2021-12-15 21:36:02 -05:00
Aaron Suen
6da9332d2b Random sedge placement size
This makes it possible to place sedges of any size on any surface,
including ones where sedges cannot grow, given enough patience
and materials.
2021-12-15 07:22:05 -05:00
Aaron Suen
c5e19ed1b5 Just show exact stack counts in looktips
Was there ever really any value to forcing a player to
pick up a stack to inspect it instead of just telling them
how many up front?  Probably not.
2021-12-15 02:38:07 -05:00
Aaron Suen
430d8dc7c2 Another image optimization 2021-12-13 23:47:33 -05:00
Aaron Suen
f936121be9 Tweak firestarting weights
Make sparks bias "downward" for igniting nearby
materials, making starting a fire on top of thatch
more useful, and making thatch a more useful
tinder material.
2021-12-13 23:42:28 -05:00
Aaron Suen
6cb8aecbf1 Thatch flammability buff
- Should be more flammable than wicker
- Optional alternative "first fire" tinder
2021-12-13 23:34:37 -05:00
Aaron Suen
a7127c0f0e Buff sedge drop rates
Sedge farming for thatch (the only major application
right now) is far too brutal, especially after the 8:1
conversion rate.
2021-12-13 23:28:26 -05:00
Aaron Suen
d6ebd48e26 Fix mod list 2021-12-13 22:54:13 -05:00
Aaron Suen
7d12ea4acb Use textures for all particles
These cannot be overridden by texturepacks
otherwise.
2021-12-13 22:18:06 -05:00
Aaron Suen
66ddeeb2d3 Fix players being hurt by own thrown items 2021-12-13 21:54:13 -05:00
Aaron Suen
f8df58eb67 Typo 2021-12-13 20:58:38 -05:00
Aaron Suen
f48798ba77 Tweak raking line opacity 2021-12-13 06:54:09 -05:00
Aaron Suen
8120a5c715 Re-rename hints/challenges to discovery
NodeCore is supposed to be a "player vs self" mental
challenge, neither tourism/spectacle, nor a "player vs
environment" conquest.  Players are supposed to find
their own goals, as well as applying the effort to
achieve them, and the nature of the goals is
purposefully as open-ended as possible, ideally with
no bias toward any kind of "completionism."

The name "Hints" implied some kind of assistance, and
thus was inappropriate.  The name "Challenges"
similarly implies an extrinsic source of motivation,
which the system is only marginally designed to
provide; especially, it helps new player gain some
momentum, but players are supposed to find their own
motivation eventually instead of chasing after
hint completion as a goal, especially since they will
miss the most compelling aspects of the game.

Somewhat experimentally, rename these once again
to "discovery"/"discoveries" and remove language that
suggests progress toward completion.  Add stronger
language suggesting that there is much more to
discover outside of this, hinting at emergent systems
as an example
2021-12-12 14:17:29 -05:00
Aaron Suen
f3bdf91dc6 More accurate entity settling
Under heavy lag conditions, physical entities may
land on the ground at any point during a time
step, but if they have a lot of horizontal velocity
then they may "slide" along the ground, and if we
only check for settling based on their pos at step
times, they may have already slid some distance
dependent on luck and the actual amount of
server lag.  This means that under heavy lag
conditions, items may spread out inconsistently
from their landing positions and make a messy
pile.

Using the MT 5.3+ moveresult parameter of
entity steps, we can easily find out when the
initial ground contact occured, and use that as
the settling position, which should be more
consistent under lag conditions.

This has the effect of making entities more
consistently "sticky" so they always tend to
stick at the point of initial contact and rarely
slide or glance along the ground, unless they
hit an edge/corner.
2021-12-12 10:01:24 -05:00
Aaron Suen
67e4c5d476 Leach to non-loose to aid witnessability
If the node leaches and then later repacks, then
the delayed witness would be lost.  This gives
players more time to witness the result.
2021-12-12 00:46:06 -05:00
Aaron Suen
95a27184d8 Refresh player guide upon closing it 2021-12-12 00:36:24 -05:00
Aaron Suen
0e96a579b1 Fix leaching hints 2021-12-12 00:33:17 -05:00
Aaron Suen
f5e966480b Fix delayed witness mis-ordering
Witness checks include data about the node in
place at the time that the witness even occurred,
so players are not awarded credit if the node they
see there was changed again afterwards.  A lot of
old witness code inserted the witness right
before the node was changed, since the node
change was done as a tail call, but this does not
work with delayed witnessing because the
delayed witness data would be tied to the old
node, not the replacement one.

Moving witness to after node setting should fix
a number of broken hints that should have been
delayed-witnessable, e.g. brick bonding.
2021-12-12 00:04:37 -05:00
Aaron Suen
502cafc852 Fix misnamed cherenkov ABM 2021-12-11 23:36:01 -05:00
Aaron Suen
df0a2a177f Fix anvil performance issues
Instead of registering 12 separate recipes for
each anvil recipe, just register 2: one for each
temper, and do a second lookup for anvil types
in pre/post check.  This should avoid having
to re-evaluate all the rest of the stuff for each
anvil/temper combination type.
2021-12-11 22:56:51 -05:00
Aaron Suen
8bfdc211a3 Convert some action logs to info
We were using action log level for a lot of
things because by default MT does not seem
to capture info logs to stderr.  On "production"
servers though this makes too much noise and
makes it hard to find actual player actions.
Servers that want info logging will just have
to configure/compile it in.
2021-12-11 21:26:18 -05:00
Aaron Suen
430f08385c Fix soaking meta cache corruption
This was causing soaking things to finish early
and all fire at the same time.
2021-12-11 21:10:27 -05:00
Aaron Suen
5caf66f6ea Add an "uncheat" command 2021-12-11 21:09:33 -05:00
Aaron Suen
ae24ff0655 Lower some ABM costs 2021-12-11 12:14:42 -05:00
Aaron Suen
17c5b2fda7 Leaching by group, fix settingtypes.txt 2021-12-11 11:36:52 -05:00
Aaron Suen
c34bc39530 Soil leaching now requires raked soils
This is a design compromise to knock out the
worst offender in ABM cost, by requiring a node
that must be created by player action instead
of ubiquitous naturally-occuring nodes that all
need to be checked.

Leaching is really meant to be more of a minor
gameplay element anyway, for either skyblock
purposes, or for people who are bored enough
that they want to take on a challenge like a
neutral eco footprint; most normal players just
gather the materials from mapgen and hardly
bother with leaching recipes anyway.
2021-12-11 11:25:18 -05:00
Aaron Suen
77c2868412 Allow plank bashing automation like log chopping 2021-12-11 11:14:00 -05:00
Aaron Suen
d7df7f5521 Translation sync 2021-12-10 08:05:53 -05:00
Aaron Suen
26369a9d54 Generic priv notify for any/all GUI tabs 2021-12-10 08:01:45 -05:00
Aaron Suen
22a848a0d2 Update tabs immediately on priv grant/revoke 2021-12-10 07:57:28 -05:00
Aaron Suen
bebac9d511 Reorganize tabs for players w/o Challenges tab
- Hide the Challenges tab for players who don't have interact
  privs and thus can't use them.
- If there are fewer tabs than the horizontal limit, expand all
  remaining tabs to fill the horizontal space instead of leaving
  a gap at the right side, which looks bad when there's a
  scrollbar in the content below.
2021-12-10 07:42:33 -05:00
Aaron Suen
227fef47d9 Fix wrong ordering in glyph touchthru
things are listed in Z order, and the glyph is clearly printed
on TOP of the node.  Put glyph on top, consistent with the way
fluids work.
2021-12-10 07:19:36 -05:00
Aaron Suen
7dcbf273ee Add door catapult sounds 2021-12-10 07:16:00 -05:00
Aaron Suen
4aee5a8972 Fix missing door convey fall check 2021-12-10 00:16:37 -05:00
Aaron Suen
86707af8ae Nerf rush growth rate
Seems like it's too easy to farm wicker in
comparison to farming thatch
2021-12-10 00:10:43 -05:00
Aaron Suen
328e52d68d More pronounced door tool anim
Was hard to see on MP servers
2021-12-09 22:37:26 -05:00
Aaron Suen
6fb5ff1980 Animation for door dig/pummel 2021-12-09 22:30:39 -05:00
Aaron Suen
c6de6a5a52 Thatch and wicker shouldn't be so hard to dig 2021-12-09 21:58:49 -05:00
Aaron Suen
0b3271d2da Significantly simplify ambiance dequeueing
These are just going into the after() queue now so
all the rate-limiting stuff is no longer needed.
2021-12-08 23:43:31 -05:00
Aaron Suen
a15dab698a Fix tarstone hint using thrown item 2021-12-08 23:31:03 -05:00
Aaron Suen
80b7160366 Earth raking hints 2021-12-08 23:12:22 -05:00
Aaron Suen
d0f50dd11a Falling nodes crush raked earth back to normal 2021-12-08 22:37:00 -05:00
Aaron Suen
7db1beee70 Add raked dirt and humus
These also function as "farmland", as raking enhances
the nutrient bioavailiability.
2021-12-08 22:30:50 -05:00
Aaron Suen
57ded7744d Humus is not interchangeable with dirt
This probably breaks using humus as a substitute for
dirt in making adobe, which is probably fine.
2021-12-08 22:06:24 -05:00
Aaron Suen
08593e7132 Allow tarring aggregate via thrown items
This makes agg tarring automatable by catapulting
coal lumps into we aggregate pools.
2021-12-07 23:21:46 -05:00