Warn on unsupported pack languages and document how to add a game language
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
- Domain
- documentation, internationalization, testing
Research direction
Start with packages/engine/src/messages/index.ts and packages/engine/src/analyze.ts to see how catalogs and analyzer warnings are handled; check packages/engine/src/playtime.ts for the default reading speed. Read CONTRIBUTING.md and the prompt kit to find where language guidance belongs, then use the existing analyzer tests as a starting point. Done means unsupported primary language tags warn, supported tags do not, and the guide lists the files a new language touches.
Written by the indexing model from the issue text.
Description
Context
The schema accepts any BCP 47 tag in language, but the engine has message catalogs and parser vocabularies only for German and English (packages/engine/src/messages). Any other language silently falls back to English engine messages and parser words, so a French pack would mix French story text with English system messages and an English parser. ADR 0008 and docs/architecture.md (section 9) describe a new game language as an additive change, and the v0.2 milestone includes more engine messages and languages.
Scope
- Analyzer: a warning (for example
language.unsupported) when the primary subtag oflanguagehas no catalog, naming the supported languages; listed in Appendix A. - A section "Adding a game language" in CONTRIBUTING.md: message catalog, parser vocabulary (verbs, directions, stop words, prepositions, particles, meta words), default reading speed for the play-time estimate, parser tests, and accepting the code in the docs.
- A first additional language is tracked in its own issue once a native-speaking contributor volunteers.
Acceptance criteria
- A pack with
language: frgets the warning;de,de-AT,enanden-GBdo not. - The guide section exists and lists every file a new language touches.
- The prompt kit tells LLMs which pack languages are supported.
References
- packages/engine/src/messages/index.ts
- packages/engine/src/analyze.ts
- packages/engine/src/playtime.ts
- docs/adr/0008-language-policy.md
- docs/architecture.md (section 9)
- CONTRIBUTING.md
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 0
- Avg merge
- 28m
- Merged PRs (30d)
- 2
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from nullthrone/lexvm
-
area: web good first issue priority: low type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
nullthrone/lexvm#49 ·
-
area: infra good first issue priority: low type: chore
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
nullthrone/lexvm#41 ·
-
area: engine good first issue priority: low type: feature
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
nullthrone/lexvm#27 ·
-
area: web priority: low type: research
Difficulty 5/5 Over a week Newbie friendliness 35/100
nullthrone/lexvm#63 ·
-
area: infra area: web priority: medium type: chore
Difficulty 5/5 Over a week Newbie friendliness 38/100
nullthrone/lexvm#62 ·
All issues in nullthrone/lexvm
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
braintrustdata/braintrust-sdk-javascript#2659 ·
Maintainers usually reply within 1 day
-
body-parser 2.3.0 in the published ai-dial-chat-bff image is vulnerable (CVE-2026-111181, HIGH)Possibly taken @illya-havsiyevych claimed this today. Openbug
Difficulty 1/5 1-3 hours Newbie friendliness 87/100
epam/ai-dial-chat#9566 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day
-
はさみアイコンを修正するOpenbug
Difficulty 1/5 Under an hour Newbie friendliness 68/100
-
area: core
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day