Add save slots to the player
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- typescript
Hướng nghiên cứu
Start with apps/web/src/services/saves.ts, apps/web/src/logic/saves.ts, apps/web/src/services/storage.ts and apps/web/src/game/session.ts; read section 5 of docs/architecture.md for the save model. Trace autosave and storage behavior, then identify how the existing replay flow handles older pack versions. Done means the listed slot, migration, offline, conflict, warning and end-to-end acceptance criteria pass.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Context
The player keeps one autosave per pack, and New game overwrites it. Players want to try alternatives, keep a save before the finale, or share a device. The save format lexvm-save/1 already contains everything; slots are a host feature with no format change.
Scope
- Keep the autosave; add up to five manual slots per pack: Save to slot and Load from slot in the game menu. The meta commands
saveandloadopen the slot sheet (today they export and import a file). - Slot list: editable label, room name, score, turn and time saved.
- New game no longer touches manual slots.
- Export and import per slot with the existing
.lexsave.jsonfiles. - Loading a slot from an older pack version uses the existing replay flow.
- Storage migration: existing v0.1 autosaves stay readable.
- Deleting an imported pack deletes its slots after confirmation.
- Slots follow the two-tab rule of the autosave: a tab never silently overwrites a slot that another tab has written since.
Acceptance criteria
- A v0.1 autosave loads after the upgrade (migration test).
- Save to slot, play on, load slot restores state, log and revealed hints.
- Slots survive reloads and work offline.
- An end-to-end test covers save, continue and load.
- With storage unavailable, slots work for the session and the existing warning is shown.
References
- apps/web/src/services/saves.ts
- apps/web/src/logic/saves.ts
- apps/web/src/services/storage.ts
- apps/web/src/game/session.ts
- docs/architecture.md (section 5, Saves)
- Ngôn ngữ chính
- TypeScript
- Star
- 0
- Fork
- 0
- Merge trung bình
- 28 phút
- Pull request đã merge (30 ngày)
- 2
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của nullthrone/lexvm
-
area: web good first issue priority: low type: bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
nullthrone/lexvm#49 ·
-
area: infra good first issue priority: low type: chore
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
nullthrone/lexvm#41 ·
-
area: engine good first issue priority: low type: feature
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
nullthrone/lexvm#27 ·
-
area: web priority: low type: research
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
nullthrone/lexvm#63 ·
-
area: infra area: web priority: medium type: chore
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 38/100
nullthrone/lexvm#62 ·
Tất cả issue của nullthrone/lexvm
Issue tương tự
-
area: image-engine bug priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
snapotter-hq/SnapOtter#3885 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Mend: dependency security vulnerability
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 3 ngày
-
pending triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày
-
bug P3 UI/UX
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
openclaw/openclaw#182077 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày