How to Kickoff
So, here we are. The night before kickoff. FIRSTmas Eve, if you will. Mere hours from now thousands of FRC teams around the world will marvel at the maniacal machinations of the GDC. Then, immediately following the broadcast, they’ll all rush straight to their workshops and start building the perfect robot to play the 2014 game.
No, of course not. As readers of this blog are probably well aware, you have to use the tool between your ears before you ever pick one up with your hands. But what exactly does kickoff day look like for the strategically-minded FRC team?
The Calm Before the Storm
For a start, just watch and enjoy the kickoff broadcast. Relish in that sense of anticipation and the nervous excitement for the year to come. Enjoy the last completely stress-free morning you’ll have for months. Listen to Dean, Woodie, and all the guest speakers as they share their hopes and visions for the upcoming season. And, of course, don’t forget to hoot and holler with the rest of us when the game animation is FINALLY shown. Try to avoid jumping to any immediate conclusions about the game right now, however.
Read the FIRST Manual
Now it’s time to read the manual.
OK, good. Next READ THE MANUAL.
Because you didn’t read it carefully enough the first time.
No, you didn’t. You were hopped up on adrenalin and too excited to get started to pay close enough attention.
Go read it again.
We’ll wait. You have six whole weeks to build the ‘bot, 15 extra minutes to get a better handle on the game now could save you a dozens of headaches later.
Just trust me.
Sometimes It’s More of a Braindrizzle…
With a firm grasp of the rules — and a copy of the manual close by just in case — it’s now time to start analyzing the game. Begin by listing every possible action that a robot might have to perform in a match. Any action that helps score or prevent points gets written down. Distill the game into its most basic elements. The list should focus on *what* is being done, not *how* it’s being done.
For example: “collecting discs off the floor” is an action, whereas “a spatula to scoop up discs” is a design that performs an action. Focus on actions and refrain from designing until you know what this game is asking you to do.
Ding Ding: Round One
Once you have a comprehensive list of actions, it’s time to decide how important each action is to succeed in the game. Remember, you’re analyzing a game that’s never actually been played before. There will be a lot of subjectivity involved, thus your list will be mutable. Also, your team’s priorities now could could change over six weeks or after your first competition. You might even redesign and rebuild to meet your team’s new goals. That’s OK. What we want right now is a foundation to start from.
Common methods to sort any list in order of importance include voting, arguing, and hand-to-hand combat. The process can be painful and time consuming. You often aim for “everyone’s happy” but end up satisfied with “nobody’s bleeding.”
If you prefer figures to fisticuffs, you can try rating each action on a “points per second” basis to help you prioritize your list. Estimate how long it will take to complete a scoring action and divide that into how many points that action is worth. Also take into account if the action is repeatable or if it’s a one-time bonus. This method relies heavily on an accurate assessment of how long robots take to do things like drive and align with field elements. There’s an advantage here to those with more FRC experience. Also, it beats pugilism.
One List to Rule Them All
Whatever methods you use, your goal should be to come to a consensus on what your robot should be capable of doing. In the coming days, you’ll use your prioritized list as a guideline for your designers and as a tool to evaluate how well future designs fulfill the team’s stated goals. The more high-priority tasks a design can perform, the more likely that design will help your team in the competition.
Oh, and save that list of robot actions. We’ll be coming back to it.
Enjoy your kickoff, everyone!
Until next time.