82 Commits

Author SHA1 Message Date
Aaron Suen
7bc1a4ddad Standardize node placement sounds.
Add node placement sounds to processes
missing them, like tree growth.
2020-01-16 22:02:59 -05:00
Aaron Suen
19de5dfd1e mapgen_shared improvements.
- Register def tables instead of bare funcs.
- Add labels for mod logic use.
- Automatically skip for singlenode mapgens,
  e.g. for the skyblock modpack.
2020-01-12 10:30:02 -05:00
Aaron Suen
2c4e502c21 Soaking API requires explicit field name.
This guards against possible bugs caused by
running multiple conflicting processes on the
same thing.
2020-01-11 08:42:23 -05:00
Aaron Suen
9916922432 Drop float support, displace lava.
BOLO gameplay that feels too "exploity" with ability
to forcibly transport lava upwards.
2020-01-05 13:26:45 -05:00
Aaron Suen
4d47ab2e75 NC API dependency simplification.
Treat all API mods as a "layer", and use the new
nc_api_all registration to indicate that a mod depends
on the NC API (which ALL NC mods assume they do).
This means that each non-API mod does not need to
worry about which API mods it really needs and which
it does not, nor will they need to be updated for any
internal API restructures.

This is a game, not a modpack, so all mods will be
loaded anyway, and we only care about order.  That
means that we don't really need to worry about
having excess dependencies because any mod we
don't actually need will be needed by something that's
loaded anyway.  If somebody wants to reuse a
component elsewhere, they're likely to need to do
some work to untangle it anyway, because of the
amount that NodeCore mechanics interact and
interdepend.
2020-01-05 12:59:12 -05:00
Aaron Suen
dcfc80b367 Remove explicit names in mod.confs. 2020-01-05 12:38:45 -05:00
Aaron Suen
89020e8340 Major rebuild of item_entity.
This created a ton of dependency inversions, which
necessitated moving a number of API functions up into
higher layers, and restructuring dependency lists for
a number of mods.

BOLO: non-deterministic load errors due to missed
dependencies.
2020-01-05 11:42:22 -05:00
Aaron Suen
348f6f97c1 Yet another new crack texture.
- Intermediate number of stages.
- No dizzying rotation.
- Still has a blank first stage for emergency hand-dig.
- More reminiscent of isometric cube motif.
- Lines coming from center make it more "crack-like".
2019-12-30 19:05:18 -05:00
Aaron Suen
585672c81b Dirt/humus leaching via soaking.
- Add humus->dirt leeching recipe.
- Use soaking API, track dirt leeching progress across
  offline time.
2019-12-27 10:09:00 -05:00
Aaron Suen
24947c7702 Tweak gray water visuals. 2019-12-25 11:35:25 -05:00
Aaron Suen
79da85e03a Add "artificial" water.
This is a non-renewable version of water that can be
used for applications where temporary artificial water
sources need to be created.
2019-12-25 11:32:05 -05:00
Aaron Suen
58d2be5410 Make some hot-potato items place on landing. 2019-12-01 12:57:35 -05:00
Aaron Suen
6e1f3fee94 Standardize intra-line spacing in code. 2019-12-01 11:08:12 -05:00
Aaron Suen
1f504fbb1c Leech to loose sand, make sure it falls. 2019-11-30 10:38:27 -05:00
Aaron Suen
967653bf65 Dirt leeches to sand under water + time. 2019-11-30 10:15:02 -05:00
Aaron Suen
c8b7b8b8c8 Include fluid texture building script. 2019-10-14 07:12:46 -04:00
Aaron Suen
1c40762eae Further optimize large images. 2019-10-11 19:52:11 -04:00
Aaron Suen
984947830a Fixed water texture error. 2019-10-11 19:49:35 -04:00
Aaron Suen
ed2a9e9573 New experimental animated liquid textures.
These are based on the nodecore "honeycomb", so they should at
least thematically match the other textures somewhat, even if
they're not super-attractive.
2019-10-11 19:40:34 -04:00
Aaron Suen
d453df0bb8 New dirt cycle.
- Pack 8 leaves into 1 peat node.
- Leave peat nodes near soil and moisture to decompose further
  into humus.
- Humus is a high-quality soil that works like dirt in most
  ways, but grows trees quite a bit faster.
- Humus converts to dirt via grass (and eventually maybe other
  plant cultivation activities).
2019-10-06 00:08:59 -04:00
Aaron Suen
c147da4dde Convert from depends.txt to mod.conf 2019-10-05 11:24:16 -04:00
Aaron Suen
b414d7f5c0 Unify gravel in aggregate recipe. 2019-09-09 06:58:57 -04:00
Aaron Suen
952912b5f6 Allow either kind of sand for glassmaking. 2019-09-07 12:05:23 -04:00
Aaron Suen
310ce1bc6c Treat NodeCore as a unified thing.
- Collapse all nodecore "core" mods in the /mods listing, so it's
  easier to find the actual add-on mods.
- Parameterize in-game branding to make renaming derivatives just
  a little easier.
2019-09-07 09:08:57 -04:00
Aaron Suen
3dd2092945 Exempt a few materials from ever being silktouch-dug this way.
Stone should be made via concrete.  Tree stumps should only be
made by growing trees.
2019-09-04 19:09:42 -04:00
Aaron Suen
39dea8a2ae MAJOR: Code quality audit using luacheck.
- Removed lots of unused variables, a few shadowed identifiers.
- Removed a few sections of dead code.
2019-08-31 09:26:53 -04:00
Aaron Suen
fe2c153f9e Clean up all lua code style.
Formatting rules based on Paul Kulchenko's perl-based formatter...
http://notebook.kulchenko.com/programming/lua-beautifier-in-55-lines-of-perl
...using a single tab for indent.

Mostly pure whitespace changes.
2019-08-27 19:14:51 -04:00
Aaron Suen
fe00eb65c0 Wet sponges contribute to tree growth too. 2019-08-23 20:51:19 -04:00
Aaron Suen
fd52006a7a Image optimizations. 2019-08-19 22:31:00 -04:00
Aaron Suen
4b1488ed3f Hints system overhaul.
- Included new content.
- Partially converted to base on recipes instead of just items.
- Added support for group and toolcap checks.

Fixed a number of small bugs elsewhere in the process.
2019-04-03 07:41:27 -04:00
Aaron Suen
584fd2f9fa Make deep stone dig through each stage, taking longer to dig. 2019-03-24 23:15:34 -04:00
Aaron Suen
65b4d1596c Double strata thickness to 128
This allows us to reach lava depth with current technology.
2019-03-24 22:51:23 -04:00
Aaron Suen
cbcdc7aea4 Preempt lava/magma pedantry. 2019-03-24 22:38:15 -04:00
Aaron Suen
9f53c5b43d Fix crash on punching lava.
minetest.[de]serialize apparently does attempt to serialize
functions (e.g. the on_punch) hook now, but all upvalues become
nil in the process.
2019-03-24 22:32:36 -04:00
Aaron Suen
dfcb19a0cf Deeper gravel sounds, more distinct from dirt. 2019-03-16 17:14:39 -04:00
Aaron Suen
d45d9f09d2 Cut down on water noise. 2019-03-14 23:50:23 -04:00
Aaron Suen
117bb9e804 oops... 2019-03-14 21:59:24 -04:00
Aaron Suen
7eb26b5511 Simplify some names. 2019-03-14 21:58:30 -04:00
Aaron Suen
66e8352889 Fluid and ambient sounds. 2019-03-14 21:35:33 -04:00
Aaron Suen
5de0cc54ec Add stony sounds, and sounds for stacks/shelves. 2019-03-14 00:31:09 -04:00
Aaron Suen
9607bcc6a6 Start working on sounds, plus minor refinements.
- Clean up registered_* usage patterns.
- Reduce tendancy of leaves to create stack nodes.
  Now they tend to stack up properly in-world more often.
- Tweak damage system to create "headroom" where minor
  damage doesn't cost inv slots immediately.
- Make player hand skin color match model skin.
- Cleanup/unify grass abm logic.
- Start installing new sounds by MagikEh

Sound source:
  https://github.com/MagikEh/SoundsOfWarr
2019-03-13 23:51:59 -04:00
Aaron Suen
19bfab1c1f Glass now cools/quenches.
Almost done with this new feature; just need to craft lenses and
prisms from chroma glass...
2019-03-07 22:21:04 -05:00
Aaron Suen
ed7fa1e95c Add molten glass, cook sand into it w/ fire. 2019-03-07 21:50:29 -05:00
Aaron Suen
611733d7d8 Naming refinements. 2019-03-06 21:52:53 -05:00
Aaron Suen
d22a391055 Allow grass to grow on loose soil too. 2019-02-24 14:23:42 -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
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
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
7de5a4d7e3 Nerf tree growth rates.
- Trees now take a long time to develop after planting.
- Environmental factors are important.  Growth is aide by access
  to dirt for roots, and extra moisture from nearby water sources.
2019-02-01 18:34:03 -05:00