Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Offer show and give in a character's action sheet

Open
#31 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
54/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript

Research direction

Start with packages/engine/src/affordances.ts and apps/web/src/logic/actions.ts, then read the action sheet guidance in docs/spec/content-pack.md section 7 and the interaction ADR. Check the existing coverage in apps/web/test/actions.test.ts and find the engine and end-to-end test entry points. Done when character sheets offer the specified actions, the canonical command and exploration results remain unchanged, tests cover the flow, and both named docs are updated.

Written by the indexing model from the issue text.

Description

area: engine area: web priority: medium type: feature

Context

Interrogations are built on showing clues to characters. By default view offers show and give only on carried objects while a character is present (item first). Tapping a character offers look and talk, although "tap the character, Show, pick the item" is the natural flow. The player already supports that flow (apps/web/src/logic/actions.ts, targetModel with slot object), but it is reachable only when a pack lists show or give in the character's verbs, which neither bundled pack does.

Scope

  • Engine affordances: for a character present in the room, offer show when the player carries an item or clue, and give when the player carries a non-clue item, without the pack listing them.
  • Player: the command stays show <item> <npc>, so logs are identical to the item-first path.
  • Spec section 7 (action sheets) updated. The offered actions of section 14 do not change (the same commands are already offered item first), so exploration results stay the same.
  • Prompt kit regenerated because the spec changes.

Acceptance criteria

  • Tapping a character while carrying items offers Show, and Give for non-clue items.
  • Choosing an item issues the same canonical command as the item-first path.
  • lexvm check results for both packs are unchanged, including the number of explored states.
  • Engine and player unit tests cover the new sheet; an end-to-end test shows an item through the character.
  • docs/spec/content-pack.md and prompts/oneshot.md are updated.

References

  • packages/engine/src/affordances.ts
  • apps/web/src/logic/actions.ts
  • apps/web/test/actions.test.ts
  • docs/spec/content-pack.md (sections 7 and 14)
  • docs/adr/0002-tap-first-interaction-with-optional-parser.md
Dominant language
TypeScript
Stars
0
Forks
0
Avg merge
28m
Merged PRs (30d)
2

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from nullthrone/lexvm

All issues in nullthrone/lexvm

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.