https://github.com/statusfailed/halite2
An abandoned Halite II library + simple bot
https://github.com/statusfailed/halite2
Last synced: 12 months ago
JSON representation
An abandoned Halite II library + simple bot
- Host: GitHub
- URL: https://github.com/statusfailed/halite2
- Owner: statusfailed
- License: bsd-3-clause
- Created: 2018-01-30T22:33:37.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-01-30T22:36:09.000Z (about 8 years ago)
- Last Synced: 2025-01-31T08:19:04.351Z (about 1 year ago)
- Language: Haskell
- Size: 36.1 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Halite Bot
A bot and client library for [halite.io](https://www.halite.io).
Currently done:
- [ ] Port of Nuka
- [x] Types
- [x] Networking
- [x] Parsers
- [x] Tests
- [x] Commands
- [x] Geometry
- [x] `calculateDistanceBetween :: Entity -> Entity -> Double`
- [x] `lineIntersectsCircle :: Line -> Circle -> Maybe (Point, Point)`
- [x] `segmentIntersectsCircle`
- [x] `obstaclesBetween :: GameMap -> Entity -> Entity -> [Entity]`
- [ ] Game functions
- [x] ship.closestPointTo(entity)
- [x] ship.navigate(position, speed)
- [ ] `navigateTo` tests
- [x] `ship.can_dock(planetId)`
- [x] `ship.dock(planetId)`
- [ ] tests
- [ ] What's with all the fudge factors!? (closestDockingPoint and intersectLineEntity)
- [ ] Fix broken navigation code (obstacle detection not working - see greedyBot)
- [ ] Framework
- [x] State/Reader monad for writing bots
- [ ] add Writer to monad transformer for logging / commands?
- [x] entity typeclass
- [ ] sanitize bot name, otherwise it might break networking
- [ ] Test framework
- [x] Switch to Tasty
- [ ] Add SmallCheck tests for geometry