https://github.com/anatta336/arena
https://github.com/anatta336/arena
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/anatta336/arena
- Owner: Anatta336
- Created: 2023-12-03T20:27:30.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-10T19:02:47.000Z (almost 2 years ago)
- Last Synced: 2025-02-13T22:44:26.136Z (8 months ago)
- Language: TypeScript
- Size: 33.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Arena
A little coding game. Just starting out, not playable yet.## Local
```
docker run -u 1000 --rm -it \
--entrypoint /bin/bash \
-v "$(pwd)":/app -w /app \
node:20.9.0
npm i
npm run watch
```
```
docker-compose up -d
```## Todo
- [x] Draw a drone in a play area.
- [ ] Use sandboxed function to control.
- [ ] Play area wrapping.
- [ ] Provide (limited) game state to sandbox.
- [ ] Visual representation of current output state.
- [ ] Visual for input state.## Ideas
- Agents should have access to memory which persists between frames.
Block access to `window` and other things that'd normally persist, so we can do replay.- Would it be worthwhile to have multiple ``, one for each drone?
- Classic toroidal space wrap.
- Peaceful mode, encouraging choreography.
- More than 1v1. Teams?
- SpaceWar style star with gravity.
- Utility functions for vector maths.
- Introduction challenges.
## References
- https://web.dev/articles/sandboxed-iframes#safely_sandboxing_eval