holium / holium/realm

Define the multiplayer system spec

Open
#587 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
6
Forks
1
PR merge metrics
No merged PRs in 30d

Description

### Details
We need to scope out this milestone.

- Window system refactor
- It will end up being a BrowserView w/ Titlebar injection.

- Virtualized cursor events
- Top level BrowserView that all cursors are rendered to with virtualized click events passed down

- Multiplayer cursors in rooms
- Integrate cursor streaming in room data channels.

- `%rooms-session` agent
- Persist the window position using our normalized grid `[2 8]` to an agent that is synced to rooms

### Designs

1. Workroom selection
![image](https://user-images.githubusercontent.com/6413077/209801410-7d291813-0db8-4282-b7ca-0a56452d5d1d.png)

2. Open workroom - transition step .2s
![image](https://user-images.githubusercontent.com/6413077/209801661-741b56b5-bf45-46d3-819b-022ef630e3b6.png)

3. Open workroom - transition step .4s
![image](https://user-images.githubusercontent.com/6413077/209801557-bffe34bb-0540-4219-9a2d-01f5562e87ad.png)

4. Workroom loaded
![image](https://user-images.githubusercontent.com/6413077/209801595-8eca0071-8799-40de-991c-99b20eeabe62.png)

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are named, so start by locating the BrowserView, room data-channel, cursor, and `%rooms-session` implementations. Define the multiplayer system specification around window refactoring, virtualized cursor events, cursor streaming, normalized-grid position persistence, and the four described workroom states.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
distributed-systems, frontend, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.