I created RiskyBoids to practice C#, XNA, and the Object-Oriented paradigm. In it, I also strove to create steering behaviors for boids propelled by their acceleration rather than the standard technique of modify the velocity directly. I successfully implemented behaviors include flocking, seeking, and obstacle avoidance.
Intersection-based testing is used to detect future collisions so that the boid ships can avoid any planets in their path. Originally I wrote a collision handling system so that boids would collide with each other gracefully, though later decided to remove it because it looked cool to have the swarms flow around the planets, like water in a stream; rather than have the ships bouncing off each other.
- Every ship that hits a neutral planet will attack it, decreasing its population.
- If you attack a planet with 0 population, you take control of the planet
- You can send your ships between your own planets to redistribute your forces
- Occupied planets will grow in population over time
- Left click to select a planet
- Left drag to create a selection box
- Right click to send ships from selected planets to the planet under the mouse
- 0..9 Change the percent of ships to send in a dispenser (0 is 100%)