There seems to be an issue triggering events, so a lot of work
is being done by the abm to cover over this problem...
Much like my earlier work with sz_rotary, I suspect a lot of
fine-tuning will be needed.
Avoid above-grade placement, but randomly allow it, allowing
items that are "stuck" in a pile of leaves to gradually
random-walk their way out into a stable position.
Can't get HUDs to align right on high-DPI/android at all. Give up
on the combination breath/wield bar, switch back to a much earlier
version of the code for that.
For wield names, add a new tooltip to the center of the screen, and
show it transiently so that it doesn't disrupt all gameplay.
As a bonus, this is also a logical place to put a "what am I
touching" display, so hook this up for punching. Now you can
tell what you're touching even when you can't dig it. This is
like a WAILA mod, but doesn't require tracing.
On android (and possibly other very high DPI displays) the position
of the HUD is calculated incorrectly for text HUDs. According to
rubenwardy, "the HUD sucks", so it seems unlikely that this will
get fixed soon. Switch to using a sequence of image HUDs and a
bitmap font to render the hotbar text. This is currently limited,
but expandable.
They seemed to have no effect at all on android issue.
Conclusion: this is probably an engine bug, especially since I
can't get it to misbehave at all on low-DPI desktop.
Try to create HUDs in the correct initial state instead of
creating empty and trying to change on the very next tick, which
could lead to HUDs arriving out of order and desyncing.
Swap it out with the breath bar, since the breath bar won't be
displaying most of the time, so we can afford to not read what an
item is until we come up for air to look at it.
Also, "eggcorn" is a single word.
- Inventory screen is now no longer game-interactive, and serves
as purely an "about" screen.
- Move the HUD components out of inv mod and into hud mod.
- Separate player setup mod for static physical limitations like
step height, inv size, etc.
This is allows you to split a stack by throwing individual items
with sneak-drop, letting them settle into a single stack, and
then sneak-digging the stack to keep it separate in your inventory.
This makes it possible to split stacks into arbitrary quantities
without having to use the inventory GUI.
- Simplify queue handling, FIFO retry for ents not created due
to world not loaded.
- Make ents responsible for own attachment, to reduce the chance
of non-attachment due to out-of-order replication.
- Unify config object passed to ents, allowing ents to self-manage
more.
Instead of a single queue backlog/icebox setup, split into large
dev spikes and issue/cleanup stuff.
I've been doing a sort of "tick-tock" development cycle in practice
so far. Sometime cycles are "tick" where I add a major feature,
like shelves/totes, lode metallurgy, etc. Others are "tock" cycles
where I make a lot of small releases to clean up issues accumulated
from prior work.
The new backlog format will help keep these separated better.