136 Commits

Author SHA1 Message Date
Aaron Suen
ed2cfc18a1 Register capabilities for tool heads
This allows tool heads to be used in crafting,
esp. presscraft.  Note that certain tiers do not
have tool heads, like stone and infused.
2020-09-29 21:10:26 -04:00
Aaron Suen
82452c9cb6 Annealed lode cube hint
Stepping stone to reach tote handle hint
2020-09-26 22:09:22 -04:00
Aaron Suen
d4fdf8c6e8 Fix items unplaceable due to stack/touch-hurt 2020-09-26 15:03:22 -04:00
Aaron Suen
90e932bf9d Fix lode smelting hint 2020-09-26 14:19:12 -04:00
Aaron Suen
4f35782ecc Fix a few more old skinny selection boxes 2020-09-17 21:51:44 -04:00
Aaron Suen
ae74e4f546 Complete basic hint audit of all mods 2020-09-11 17:20:21 -04:00
Aaron Suen
3915426d7b Add exclusive use for infused rake
Recalculate rake function based on update tool
capabilities so rakes can work on pumice now, and
theoretically even a future snappy=3 material.
2020-09-06 17:48:47 -04:00
Aaron Suen
1632b6352a Revert "Appease 5.4-dev texture_alpha warnings"
This reverts commit 253c2282917ecade5b8356d592edab40b1d517f5.

Apparently this warning is full of crap.  Explicitly
setting use_texture_alpha in the node def does
something DIFFERENT than what the engine says
it's doing enabling it internally.  use_texture_alpha
enables alpha BLENDING, which is what we
don't want with interpolation filters, whereas
leaving it off enables alpha THRESHOLDING which
is exactly what we want.
2020-09-05 23:46:44 -04:00
Aaron Suen
18b01c1ae7 Redistribute hints into each mod
Hints themselves have not been tided up
much, but this makes the project of fixing the
hints for each mod a little more manageable
and breaks up the hard-to-navigate single
monolithic hints file in the old guide mod.

The old guide mod has now been completely
retired.  Hints are now a full-fledged API-layer
standard feature.
2020-09-04 19:07:45 -04:00
Aaron Suen
f8da98acf7 Fixes/tidying 2020-09-04 12:29:34 -04:00
Aaron Suen
72e1dc697f Fix missing adze/rake wear-out penalty
Since there are proper recycling recipes for
these to retemper or chop them into bars
and rods, we can impose a penalty for
wearing them down completely now.
2020-09-03 20:55:53 -04:00
Aaron Suen
ef4b320193 Multimodal Rake API
Based on what's being dug, rakes can have
different dig volumes and checks.

Lode rake now has 3 modes depending on
what's being dug:
- Loose things, same as wooden rake
- 3x3x3 exfoliating
- 3x1x1 soil tilling/digging
2020-09-02 07:53:05 -04:00
Aaron Suen
30172357fc Texturepack override textures for the lode rakes 2020-09-01 22:59:17 -04:00
Aaron Suen
0e709a7819 Add lode rake recycling recipe 2020-09-01 22:01:51 -04:00
Aaron Suen
a4a5a02e54 Fix lode rake prill breakdown 2020-09-01 21:58:06 -04:00
Aaron Suen
c57515a072 Rakes have gone metal too now 2020-09-01 21:42:18 -04:00
Aaron Suen
253c228291 Appease 5.4-dev texture_alpha warnings
Apparently we will be required to enable
use_texture_alpha explicitly for anything using
any level of transparency, not just alpha
blending, in some future version.
2020-08-31 23:36:35 -04:00
Aaron Suen
53c7a0c87c Add missing texturepack override textures. 2020-08-31 23:30:06 -04:00
Aaron Suen
50c8dbf6a6 Adzes can now be metal too 2020-08-31 22:03:40 -04:00
Aaron Suen
055859e267 New lode bar/rod recipes
- Hammer bar onto end of bar to make rod,
  instead of pile of 2 bars "shapelessly".  This
  opens up the possibility of hammering lode
  things against each other in a particular
  direction/shape for future crafts.
- Make lode rod chopping recycling (i.e.
  breaking things into multiple parts, not just
  reshaping a bar into a prill) require heated
  lode, consistent with the block recycling
  recipe.
2020-08-31 21:56:54 -04:00
Aaron Suen
7fdea6849a Some small lode fixes 2020-08-31 21:55:10 -04:00
Aaron Suen
88c10d3d6e Mapgen optimization
Two optimizations that added up to a significant
time savings in on_generated:
- Replacing calls to area:index(x,y,z) to precalculating
  an offset and then using stride math inside the loops
  gives us a huge cost savings.
- Prefilling lookup-by-ID tables to force them into
  sequential arrays instead of hashmaps speeds up
  lookups, for a more moderate savings.
2020-06-28 20:24:15 -04:00
Aaron Suen
b2f78c0daa Indexing for craft checks
By restricting the recipes we check based
on the name of the central object being
checked, we can do many fewer craft
checks per item and avoid expensive
checks.
2020-06-27 12:20:35 -04:00
Aaron Suen
42f125c716 Make most recipes indexable
Register a "rootmatch" property for all
recipes that represents a broader, quicker
test for recipe eligibility.  False positives are
allowed but false negatives are not.

Since most recipes are eligible, we can
use this to build an index for fast lookups
of subsets of recipes to run and skip most
of the other ones.
2020-06-27 11:06:43 -04:00
Aaron Suen
984e87e155 Consistent ABM labeling
- Make sure every ABM has a label
- Use consistent case
- More concise names / consistent voice
2020-06-17 07:09:20 -04:00
Aaron Suen
d1a5aa55a0 More useful lode cube group 2020-06-09 18:11:15 -04:00
Aaron Suen
b1c6f6feb9 Make lodesign a little more visible 2020-06-09 07:20:00 -04:00
Aaron Suen
c9b432d5e5 Lodesign redesign
Should be subtler at a distance, but more distinct up close.
2020-06-09 07:09:58 -04:00
Aaron Suen
23527e264b Artificial stone hardening process
Stone is hardened by creating an elecric field via the Peltier
effect that causes internal crystals to align.  Or something like
that.

Stone hardens over time when touching both lava and water.
All stratafiable stone types (lode sign, lode ore, lux ore) are
affected.
2020-06-04 08:09:30 -04:00
Aaron Suen
1b646d3f63 Try to enforce stone group sanity 2020-06-04 07:33:49 -04:00
Aaron Suen
14f4c505e5 Fix lode-sign stone being silktouchable
This should be consistent with plain terrain stone now.
2020-05-31 08:51:38 -04:00
Aaron Suen
a25ab0eecf Fix lode cubes falling 2020-04-12 12:25:31 -04:00
Aaron Suen
b08337a3b7 Fix heat damage from cool lode 2020-04-10 14:52:03 -04:00
Aaron Suen
920fba34ee Separate node stand/touch/radiant damage types
Don't reuse damage_per_second for damage on punch and radiant
damage.  This allows these to be defined separately, i.e. no longer
assuming that all damage is from "heat" and can radiate.  This
allows for things like thorny plants that hurt if you touch them
or stand in them but not if you stand near them.

Thanks to WintersKnight94 for reporting this.
2020-04-09 06:56:18 -04:00
Aaron Suen
94129d5067 Hack to let TP authors override inv/wield images 2020-04-05 20:35:51 -04:00
Aaron Suen
e7d4d54b1c Genericize chisels, fix recipe digging
- Register groups for chiseling doors.
- Make recipe digging not use player inventory, but drop
  as an item unconditionally.  N.B. the old "replace with air
  then drop item" method only worked with explicit item
  names and not group detection.
2020-03-29 21:32:15 -04:00
Aaron Suen
7107d29768 Register metal groups for modding 2020-03-29 21:11:41 -04:00
Aaron Suen
c6cabca0e9 Stone bricks by WintersKnight94
- Original texture by WintersKnight94.
- Node definitions and recipes adapted from original.
- Added some hooks in a few other places to make new
  recipes work.

- Chip smooth stone with a lode pick or better to make brick.
- Bricks fall but don't repose.
- Apply mortar (wet aggregate) to bond stone bricks
- Bonded bricks can be moved but don't fall anymore.
2020-03-29 20:55:55 -04:00
Aaron Suen
0012c2673b More scaling time definitions
Also, scaling_time completely overrides
group-based scaling time logic.
2020-03-29 08:13:41 -04:00
Aaron Suen
1c612ee1f7 Cobbley group, generic scaling factors by group 2020-03-29 08:05:13 -04:00
Aaron Suen
f37a918f0f Scaling and touch-hurt reforms
- Storeboxes are now scalable.
- Standardize touch-hurt operation.
- Touch-hurt damage on scaling.
- Now possible to alter scaling time via scaling_time
  group (percent of original scaling time)
2020-03-29 07:55:54 -04:00
Aaron Suen
d27c9cbc86 Mapgen limit API cleanup. 2020-03-22 10:59:06 -04:00
Aaron Suen
416855b766 Slow down lode ore "annealing". 2020-02-19 20:21:07 -05:00
Aaron Suen
bcbe77644e Buff drowning damage, nerf some node damage. 2020-02-19 19:55:22 -05:00
Aaron Suen
484c1a337f More subdued look for molten glass, image opt. 2020-02-18 20:10:08 -05:00
Aaron Suen
6a89bb5415 Compromise grass, and some more lode textures. 2020-02-18 19:02:52 -05:00
Aaron Suen
df2bb58793 Finish tree + terrain textures, new "rusty" lode look. 2020-02-18 06:30:43 -05:00
Aaron Suen
dc71f05a30 Try violet-tinting lode to make it stand out. 2020-02-18 00:48:26 -05:00
Aaron Suen
9642564378 Lode ore updates. 2020-02-18 00:29:40 -05:00
Aaron Suen
bc5708b343 Bold new look for lode! 2020-02-18 00:07:59 -05:00