- Refactor player knowledge into player mod, to declutter API.
- Move player knowledge into mod storage so players don't need to
be connected to access. Old knowledge will be reset, but I
doubt there was very much of it to lose.
- Start gathering some basic stats.
- Main glaring omission is player moving and idle time.
- Add a bit of stone to the tip of a wooden tool to harden it.
- Stone tools wear back down to their wooden originals.
- Stone tools dig faster, but wear quickly, so you need to pay
attention to wear levels and carry spare stone tips.
Also:
- Nerfed mining speeds again, but made higher-tier tools much
faster relative to lower.
- Nerfed tool durability as well.
Also:
- Standardized item ejection logic.
Try to standardize the way we handle tools, materials, digtimes.
- Levels start at 1 and work upwards.
- Level 1 is for "hand" or "primitive" tools.
- Levels 2+ are wood, stone, metal, etc.
- Link dig times, tool levels, and durability together.
- Material groups now define standard "base dig times" which
are the main thing that makes e.g. stone harder to dig than dirt.
The speed of digging almost everything will probably have changed,
in some cases not for the better; much testing will be needed.
- Clean up utils into multiple files.
- Standardize limited ABM.
- Standardize debug trace handling. Instead of using chat_send_all
to debug, and then having to remember to remove before release,
allow privileged players to receive all server debug messages.
Much TODO:
- Primitive adze should not harvest trees whole; need to split into
planks from end only.
- Not entirely satisfied with crafting experience from gameplay nor
API perspective.
- Need an easier way to register these kinds of recipe checks.
- Need more gameplay actions to commmit a craft, e.g. have to pound
the tool head into place.
- Punch a node repeatedly, aborting dig between each swing, to
trigger the "pummel" action.
- Can use this to repack "loose soil" type nodes into solid,
non-falling versions.
"Loose" versions of materials will only allow a certain maximum
angle of repose, and will shuffle around sideways and fall if
that angle is exceeded. Softer materials like sand, leaves, loose
items, will all have shallow angles, while sturdier stuff like
dirt, gravel, etc. may allow steeper ones.