## Event Architecture - Local events are broadcast as custom events prefixed `L-` - Incoming global messages are broadcast as custom events prefixed with `G` ## Robot Movement The state of the robots are fully contained in a central stack, allowing undo, reset, shadowing, replays, and move counting. Any movement, including initial locations, is represented by pushing or popping locations from the stack. A victory state can be stored by taking a snapshot of the current stack. ## Credit Icons from [https://game-icons.net](https://game-icons.net) ## TODO - win declare - replay stack - countdown skip - slide arrows - chat box - no cancel from name prompt - clear out the trash bins of history (client) - handle conn interrupt - donate link heart fill in not underline - Robots not resizing (shadows do though) - limit concurrent players, make sure connections are closed - move websocket server to /core - dynamic socket server resolution - walls and winstate algorithm - restore name prompt - tutorial - donate link