1726 Commits

Author SHA1 Message Date
Aaron Suen
cb2251529a Pumwater renewal recipe
Surround stone with pumwater on at least 4 sides.
If surrounded on all 6 faces, should take about
30 minutes on average.
2021-03-14 10:26:46 -04:00
Aaron Suen
7f76c50b7d Clean up old junk strings in translations 2021-03-12 18:27:30 -05:00
Aaron Suen
3bef859c4c Make spawn star relative to static_spawnpoint if set 2021-03-12 07:19:37 -05:00
Aaron Suen
13c633e19e Fix long-standing infinite loop freeze in door logic
Thanks to NoComment for discovering, researching, and reporting.
2021-03-11 08:15:39 -05:00
Aaron Suen
db188d5578 Translation sync, w/ updated copyright date 2021-03-11 08:04:25 -05:00
Aaron Suen
817a9692da Remove redundant door registrations
Don't make door panels out of doors/panels.
2021-03-11 07:58:27 -05:00
Aaron Suen
cbea186eab Remove dungeon cobble name
Simplify things for translations
2021-03-11 07:58:07 -05:00
Aaron Suen
668ea4cb4e Fix copyright dates 2021-03-11 07:36:11 -05:00
Aaron Suen
1513d7eb93 Announce player rejection on next tick
This way, at the time the announcement is made,
the player has already been kicked, and any mods
that check the player list based on this (i.e.
szutil_nowonline) will show the correct list.
2021-03-10 09:38:58 -05:00
Aaron Suen
319a3f7480 Fix dynamic lighting staying after torch goes out 2021-03-09 18:29:32 -05:00
Aaron Suen
d85424211b Merge branch 'master' into dev 2021-03-09 13:53:35 -05:00
Aaron Suen
1bba71f80c Spelling things correctly is helpful 2021-03-09 13:53:23 -05:00
Aaron Suen
95f0fb0ee9 Heaviest image compression option 2021-03-09 08:33:58 -05:00
Aaron Suen
c706163bc1 Model object file optimization
https://github.com/ExeVirus/Compress-Obj
2021-03-09 08:25:01 -05:00
Aaron Suen
410ebd5d8d Recompression using ECT
https://github.com/fhanau/Efficient-Compression-Tool
2021-03-09 08:16:23 -05:00
Aaron Suen
0b94d56ca8 Merge branch 'master' into dev 2021-03-09 07:56:46 -05:00
Aaron Suen
19e4a225e0 Don't translate player names
- Simplify wield item player owner display
- Don't try to translate player names
2021-03-09 07:51:03 -05:00
Aaron Suen
a4c5eb3b1b Sledgehammer solution to visinvs not loading
Apparently LBMs are just not reliable anymore as
of 5.4, so we'll have to fall back to the at least
eventually-reliable ABM again.
2021-03-09 00:09:05 -05:00
Aaron Suen
ada305338f Log visinv entity retries 2021-03-08 22:26:00 -05:00
Aaron Suen
51fb21175f Retry failed visinv ent creation
Visinv ents sometimes don't appear in MT
5.4+.  I haven't fully investigated the
reason yet, but it could be because the
mapblocks aren't "active" yet when the
LBM is being called and trying to create the
ents, so if the creation fails, try queueing
a retry and see if we catch it later.
2021-03-08 22:06:56 -05:00
Aaron Suen
1f8f151e76 loot is a core mod too 2021-03-08 21:43:47 -05:00
Aaron Suen
b67a984967 Reduce dungeon brickiness
Bricks are a valuable resource, so we don't
want to give too many to the player just
for finding a dungeon.
2021-03-05 21:40:48 -05:00
Aaron Suen
b89f2b7d86 Disable fast dungeon initialization methods
Apparently on top of dungeons regenerating
over top of themselves, caves can also carve
into dungeons, and this may cause issues
with dungeon loot, where the loot nodes are
removed (but w/o the destructor) so that
floating fake visinv entities are sometimes
left floating in place.

Instead, give the engine time to finish
initializing dungeons, and then use only the
ABM (sigh, it's always only ABMs that are
actually eventually reliable after all) to do
delayed initialization.

This kind of sucks if the player starts out in
a dungeon in a new map, but the old "fast"
methods weren't fast enough to prevent a
flash of uninitialized dungeon anyway, so we
just have to hope that the dungeons will get
initialized while on the map horizon before
the player gets close enough for it to matter.

Get rid of the different dungeon cobble now
to mitigate this, also since we no longer
need it to debug uninitialized dungeons.
2021-03-05 21:02:36 -05:00
Aaron Suen
3fe2d58872 Stone brickify dungeons 2021-03-05 20:56:47 -05:00
Aaron Suen
a24cce594b Fix totes in loot table 2021-03-05 20:35:36 -05:00
Aaron Suen
759bca9377 Prevent loot placement on stairs
This interferes with dungeon mobility, and
especially when shelves are placed on
stairs this makes it less believable that
someone could have once lived here and
left it this way.
2021-03-04 23:36:56 -05:00
Aaron Suen
4c39a6b51f Remove debugging chatter 2021-03-04 23:13:15 -05:00
Aaron Suen
ccb86a4552 Merge sort-of-exprimental dungeon loot system 2021-03-04 23:11:24 -05:00
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
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
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
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
fc404891ff Fix a missing dependency 2021-03-01 21:41:35 -05:00