2155 Commits

Author SHA1 Message Date
Aaron Suen
40cd5b8d9e Fix spawn star showing over darkening 2021-03-04 23:11:16 -05:00
Aaron Suen
ad6b19a7cc Deeper dungeons have denser loot 2021-03-04 23:05:39 -05:00
Aaron Suen
f18e665ca7 Support loot in high ceiling deep dungeons 2021-03-04 22:56:52 -05:00
Aaron Suen
54a1175e3e Dungeon loot shelf towers 2021-03-04 22:46:28 -05:00
Aaron Suen
d2f7e3761a Dungeon loot variation
Set quantities and tool wears for treasures
2021-03-04 22:26:30 -05:00
Aaron Suen
498aace27b Initial proof-of-concept dungeon loot
Using the new dungeon API, picking loot fairly from
the loot table list and just leaving one lying on the
ground.
2021-03-04 22:14:27 -05:00
Aaron Suen
937b51ef26 Merge branch 'mapocalypse' into dungeonloot 2021-03-04 21:47:06 -05:00
Aaron Suen
5de517dbe9 New dungeon content API
Mods can now nodecore.register_dungeongen(def)
similar to how mapgen_shared works, except func is
run for each (pos, node) in dungeons.  This tries to
catch all dungeons as soon as possible, but some
nodes may experience arbitrary delays before
they're processed.  We hope this won't be a problem
in practice because dungeons should usually
generate on the periphery of view range and have
plenty of time to process before they arrive at the
player's current location.

This API could be used in theory to customize the
materials used in dungeons or add treasures.
2021-03-04 21:46:49 -05:00
Aaron Suen
b7bc1ced5c Filter mod content out of loot tables
We can only depend on items that are part of the
core game; mods will need to register loot
themselves.
2021-03-04 20:43:53 -05:00
Aaron Suen
d1d43178a3 Generate loot table data 2021-03-04 20:27:53 -05:00
Aaron Suen
0a6cb7c202 Merge branch 'dev' into mapocalypse 2021-03-04 19:07:44 -05:00
Aaron Suen
d083d7100c Merge branch 'dev' into flora 2021-03-04 19:07:33 -05:00
Aaron Suen
bf8841f963 Add horizontal movement to wall scaling
This allows players a little more scaling mobility
when scaling a wall, and especially the ability to
navigate around outside corners.
2021-03-04 19:07:25 -05:00
Aaron Suen
5aaf470659 Add horizontal movement to wall scaling
This allows players a little more scaling mobility
when scaling a wall, and especially the ability to
navigate around outside corners.
2021-03-04 19:06:24 -05:00
Aaron Suen
7214dd5f5b Initial import of rushes, by WintersKnight
No behavior yet, just the resource itself, and
basic mapgen spawning.
2021-03-02 22:52:21 -05:00
Aaron Suen
be71e234d4 Some basic biome tweaks from WintersKnight
- Deeper dirt on land
- Reduce size of beaches
2021-03-02 21:36:01 -05:00
Aaron Suen
1b5df3c67c Grass check logic microoptimization 2021-03-02 21:09:24 -05:00
Aaron Suen
6b5f7e9ace Higher-quality soil gives eggcorns a boost
Just as surrounding sprouts with higher quality
soil causes them to mature faster, planting them
direcly in higher-quality soil gives them a oneshot
boost (since the soil quality is consumed
immediately).
2021-03-02 20:09:19 -05:00
Aaron Suen
eb933c5d4f ContentDB versioning fixed for now 2021-03-02 20:01:52 -05:00
Aaron Suen
fa1f9ec9c1 Pickpocketing tweaks
- Can inspect items at a greater distance than
  you can actually steal.
- Can steal at slightly greater distance.
- Reorganized and reordered checks.
2021-03-02 19:04:20 -05:00
Aaron Suen
01332c2a0b Prevent writing breaking on unloaded areas
If the glyph is in an active area but the node it's
attached to isn't loaded (so we can't check it for
eligibility) then let the writing stay.
2021-03-02 18:53:02 -05:00
Aaron Suen
1ef3eb412a Revert ABM time budget configuration.
The idea was to have Minetest spend more of its total available
time running ABMs so that ABMs are less likely to fall behind.
The problem is that Minetest's ABM time management is so completely
TERRIBLE that this causes huge lagspikes and makes the game
largely unplayable, so we're required to waste this time instead.
2021-03-02 08:20:33 -05:00
Aaron Suen
eac9d0d5ea Stop trying to load node stack without node pos 2021-03-02 06:20:07 -05:00
Aaron Suen
6c649b3747 Relax empty tote handle restrictions
- They can now be stacked, somewhat
- They can be placed inside lode crates
2021-03-01 23:30:38 -05:00
Aaron Suen
10e1c5ca48 Merge branch 'dev' into mapocalypse 2021-03-01 22:15:00 -05:00
Aaron Suen
3232439f98 Add a thing to deprecate upon 5.3 EOS 2021-03-01 21:57:34 -05:00
Aaron Suen
fc404891ff Fix a missing dependency 2021-03-01 21:41:35 -05:00
Aaron Suen
d1fd34b8ab Avoid crash on failure to get player client info 2021-03-01 20:25:24 -05:00
Aaron Suen
c10e80ef87 Set name in mod.conf as demanded by 5.5+ 2021-03-01 20:10:27 -05:00
Aaron Suen
f0f348510a More nuanced pickpocketing
- Touchtip
- Can now inspect items w/o stealing by
  just punching once
- Sound/visual effects build over time
  instead of being constant intensity
2021-03-01 19:16:05 -05:00
Aaron Suen
51b5aa8b94 Playerstep microoptimization
Avoid calling get_player_name too much
2021-03-01 18:58:34 -05:00
Aaron Suen
171ebaf5b4 Reset speed on taking normal damage 2021-03-01 18:44:13 -05:00
Aaron Suen
068e5fba9f Hotfix for nav star memory leak issue 2021-03-01 17:14:35 -05:00
Aaron Suen
d69f5fa592 Increase size of spawn star dead zone 2021-02-28 22:52:55 -05:00
Aaron Suen
d922c4344b Consider sky nav idea complete 2021-02-28 22:47:04 -05:00
Aaron Suen
253ad94fa8 Add spawnward navigation star to skybox
When not pathologically near spawn, a magenta
star appears above pointing toward spawn, and
giving an indication (logarithmic magnitude) of
the distance to spawn.
2021-02-28 22:46:14 -05:00
Aaron Suen
96cbdc3f25 Fix missed color patch 2021-02-28 21:30:46 -05:00
Aaron Suen
34953038c1 Pickpocketing visual, layered audio 2021-02-28 21:26:30 -05:00
Aaron Suen
aad575b685 New "pickpocketing" feature
Complement to YCTIWY (which may be merged
sooner or later).  Bandolier items are now
pointable and can be "dug" to take them.

Pickpocketing requires reasonable aim (players
can protect themselves by moving), produces
sound, and logs the action.  Players also cannot
pickpocket from far away or behind.

TODO: Visual hint that it's happening for players
without sound.
2021-02-28 20:40:30 -05:00
Aaron Suen
0792c426a4 Bandolier upright_sprights work again in 5.3+
Now that 5.2- is retired we can stop using the
geometrically-expensive wieldmesh visuals for
empty slots.
2021-02-28 19:36:30 -05:00
Aaron Suen
7a21096731 Accelerate leaf decay
When leaves decay, they accelerate checks for
decay of nearby leaves, so overall tree leaves
decay much faster, but without increasing load
at steady-state i.e. for stable trees.
2021-02-28 16:45:02 -05:00
Aaron Suen
67255ef1c5 Mark an idea as done 2021-02-28 14:29:26 -05:00
Aaron Suen
f3febbb6c1 Cache player color textures
The hashing and trig funcs may be a little
expensive, and it's pretty easy to cache the
results.
2021-02-28 14:26:13 -05:00
Aaron Suen
9e9474d25f Wash out colors and rebalance with SP skin 2021-02-28 14:20:18 -05:00
Aaron Suen
8a79633465 Brighten colors to compensate for multiply filter 2021-02-28 14:14:46 -05:00
Aaron Suen
2270f84336 Unique per-player default skin
Colorize player clothes based on a hash of player
name.  This should make it easier to distinguish
players from each other even when you can't see
their names, by remembering clothing colors.

Unfortunately there's no good way currently to
prevent some ugly color combinations, which may
risk incentivizing players to mess with their name
until they get a combination they like, creating a
bunch of junk accounts.  Making colors never
clash (i.e. always matching or complementary
hues) would reduce the variation in colorations,
causing more player color collisions.

Finding a way to ensure colors are "pretty" but
still having enough variation to give each player
name a unique color scheme would be ideal.  Also
there's room for more variations, e.g. adding some
stripes, patterns, emblems, etc. that can be
colorized separately, ideally something visible
from every angle.
2021-02-28 14:09:29 -05:00
Aaron Suen
15fd56f954 Re-remove old JSON metadata 2021-02-28 08:27:21 -05:00
Aaron Suen
4ef1d9b04a Oops, wrong type 2021-02-28 08:18:09 -05:00
Aaron Suen
f91178f96b Rebuild package metadata from template
Consolidate back into .cdbrelease.lua, and fix any
typos or field name issues for new stricter
cdbrelease option parsing.
2021-02-28 08:15:15 -05:00
Aaron Suen
205f264ae6 Fix one more field name 2021-02-27 18:58:42 -05:00