crafting v0.5.0 + composition v0.4.0: Quality & Condition (Phase J)
lib-core.composition v0.4.0: un-defer quality/condition as inert numeric properties (loud-error removed); composition stores them without semantics. lib-core.crafting v0.5.0: quality-block (multi-contributor product-quality formula: skill-band with min=requires-floor + named ingredient/tool qualities), optional slot name, tool wear_per_use (condition decrement + wear report). affordance stays boolean. Additive to v0.4.0. vagrant-skeleton v0.22.0: branch quality-band RNG at spawn; stone_hammer condition=1.0; knap+axe quality-blocks; hammer wears out. Headless-verified 20/20. Design: meta/docs/design/2026-08-03-crafting-quality-condition-design.md. Docs synced: crafting-model.md, composition-model.md, libraries.md, READMEs.
This commit is contained in:
16
README.md
16
README.md
@@ -8,11 +8,23 @@ callback, foot-body-orientation ("tactical twist"), scale-deformation walk
|
||||
cycle, and inheritance-decoupled foot sprites. End-to-end inventory pickup/drop
|
||||
demo: pick up a rock into a backpack container, drop it back into the world.
|
||||
|
||||
**Version:** 0.21.0
|
||||
**Version:** 0.22.0
|
||||
**Module-ID:** vagrant-skeleton
|
||||
**Requires:** lib-core.input >=0.4.0, lib-core.camera >=0.3.0, lib-core.render >=0.2.0, lib-core.maps >=0.1.2, lib-core.puppet >=0.4.4, lib-core.interaction >=0.1.0, lib-core.composition >=0.3.0, lib-core.actor >=0.1.0, lib-core.inventory-list >=0.1.0, lib-core.panel >=0.2.0, lib-core.inventory-list-display >=0.1.0, lib-core.notify >=0.1.0, lib-core.notify-display >=0.1.0, lib-core.world-overlay >=0.1.0, lib-core.crafting >=0.4.0, lib-core.crafting-display >=0.2.0, lib-asset.prototype-subterrain >=0.2.0, lib-asset.prototype-tc-basics >=0.1.0
|
||||
**Requires:** lib-core.input >=0.4.0, lib-core.camera >=0.3.0, lib-core.render >=0.2.0, lib-core.maps >=0.1.2, lib-core.puppet >=0.4.4, lib-core.interaction >=0.1.0, lib-core.composition >=0.4.0, lib-core.actor >=0.1.0, lib-core.inventory-list >=0.1.0, lib-core.panel >=0.2.0, lib-core.inventory-list-display >=0.1.0, lib-core.notify >=0.1.0, lib-core.notify-display >=0.1.0, lib-core.world-overlay >=0.1.0, lib-core.crafting >=0.5.0, lib-core.crafting-display >=0.2.0, lib-asset.prototype-subterrain >=0.2.0, lib-asset.prototype-tc-basics >=0.1.0
|
||||
**Tags:** test-chamber, puppet, walking-sim, interaction
|
||||
|
||||
> **v0.22.0:** **Quality & Condition (crafting v0.5.0 / Phase J).** Items now carry
|
||||
> a `quality` (build-grade) and tools a `condition` (wear). A storm-broken `branch`
|
||||
> rolls its `quality` in [0.5,1.0] at spawn (producer sets quality; the RNG lives in
|
||||
> the module, never Core). `knap_sharp_stone` computes the edge's quality from
|
||||
> skill-band + rock grade + hammer `quality×condition`, and **wears** the hammer 0.2
|
||||
> per knap (5 knaps → a fully-worn hammer stops qualifying — the recipe asks for
|
||||
> `condition > 0`). `craft_stone_axe`'s quality reads skill (floor = the `requires`
|
||||
> gate 3) + head + haft, so a mediocre branch caps the axe even at max skill.
|
||||
> `affordance.*` stays boolean; quality/condition are orthogonal scalars. Headless-
|
||||
> verified (20/20): formula values, hammer wear-out, mediocre-haft cap, neutral-1.0
|
||||
> default for un-graded items.
|
||||
>
|
||||
> **v0.21.0:** **Skill-gating (crafting v0.4.0 / ADR-0056).** Recipes can now gate
|
||||
> on and reward the ACTOR: the player-actor carries `skill.knapping` (an entity
|
||||
> property), `knap_sharp_stone` **grants** knapping-XP, and `craft_stone_axe`
|
||||
|
||||
Reference in New Issue
Block a user