feat: add server and frontend initial - wood chopping
This commit is contained in:
+9
-1
@@ -15,12 +15,17 @@
|
||||
| Клиенты | Svelte 5 + PixiJS 8 (8.x) + bitecs 0.4 |
|
||||
| Сервер | Node.js, `node:http` + `ws` + `sirv` (без фреймворка), симуляция на bitecs |
|
||||
| Twitch | `@twurple/easy-bot` (чтение команд + ответы в чат), `@twurple/eventsub-ws` (Channel Points) |
|
||||
| БД | SQLite (`better-sqlite3`) через тонкий слой репозиториев |
|
||||
| БД | SQLite через тонкий слой persist. M1: встроенный `node:sqlite` (Node ≥24, без нативных сборок и install-скриптов); замена на `better-sqlite3`/др. — при необходимости, не трогая остальной код |
|
||||
|
||||
Решения по ECS: **bitecs, новый API 0.4** (в 0.4 API переписан; старый доступен как `bitecs/legacy`).
|
||||
Запасной вариант — koota (pmndrs), если новый API окажется слишком зубодробительным.
|
||||
miniplex отклонён (объектный оверхед + не развивается с 2023).
|
||||
|
||||
**Уточнение по факту M1:** вертикальный срез сделан на plain TS за узким интерфейсом
|
||||
`SimWorld` (сущностей — десятки, выгод от ECS ноль, а 0.4 требует чтения исходников).
|
||||
Решение по ECS — в M2 по факту роста: bitecs 0.4, koota или остаться на plain TS,
|
||||
если масштабы не потребуют.
|
||||
|
||||
## Архитектура
|
||||
|
||||
```txt
|
||||
@@ -195,6 +200,9 @@ Twitch не используем. На старте все зрители с о
|
||||
3. **Решено: идём полностью на бесплатном.** База — Kenney (CC0); OpenGameArt — с проверкой
|
||||
лицензии каждого ассета. Платные паки (LimeZu ≈ $5) — опция на потом, если захочется
|
||||
единого стиля
|
||||
4. **M1 — процедурные спрайты в коде** (человечек, топор, деревья рисуются Pixi-графикой):
|
||||
ноль лицензионных рисков и мгновенные правки; паки подключаем с M2, заменив
|
||||
`AvatarView`/`TreeView` в `render`
|
||||
|
||||
## Идеи на потом
|
||||
|
||||
|
||||
Reference in New Issue
Block a user