Inspiration
Back in elementary school, "Beyblades" were all the rage; every kid in school had one and we played with them until they were eventually banned by the school. Beyblades are spinner tops that are used to battle your friends. Each person would spin their top into an arena of some kind, and the last one spinning won.
We all remembered played with Beyblades as a kid, and we felt that creating a game based around this concept would be a fun way to integrate the Myo armband into our project.
What it does
Using two Myo armbands, two players can battle their "Myoblades" and see who come out on top. Users can control the menu by doing gestures, and can control the myoblades by moving their arm in front of them utilizing the myo armband's gyroscopes. When two tops collide, angle and speed of attack are taken into account. Players will find more success by carefully maneuvering around their opponent, rather than charging head first.
How I built it
Myoblade was built using Unity along with the Myo armband Unity integration package. Gyroscope signals are read into the game and mapped onto a vector in a 2-dimensional plane. This vector is used as the direction vector for whichever myoblade the user is controlling.
This vector, whose magnitude depends on the distance the user has moved their arm from the starting position, controls various things about the myoblade such as speed, direction, tilt, knock-back, and attack power.
When two myoblades collide, or a myoblade collides with the arena wall, they lose energy. As energy is lost the blades will begin to slow down, until one (or both) eventually stop spinning and fall over. The amount of energy lost depends on the speed and angle of attack of your opponent.
Challenges I ran into
Integrating the Myo armband into unity was a relatively smooth process, but converting the input into the movement vector mentioned above was difficult. Getting the energy rate lost during a collision was a difficult balance process, requiring multiple iterations of various methods culminating in what we feel is a fun and interesting game-play loop.
Accomplishments that I'm proud of
When the myoblades collide they bounce off of each other due to a number of factors. This effect almost exactly how Beyblades would look when they collided in real life, giving the game an authentic feel.
We managed to make the control of the myoblade with the Myo armband quite intuitive and easy to use.
What I learned
Learning how to integrate the Myo armband into Unity was a valuable experience. We will look to integrate this technology into future projects as well.
What's next for MyoBlade
In the future we would like to add various visual aspects, such as particle effects (sparks on collision), trails for the tops, and additional myoblade models. We would also like to add sound effects, more arena types, and an AI enemy so player can play single player.
Log in or sign up for Devpost to join the conversation.