Idiots guide to making good shooters

I am a 2nd year member on my team and we have always struggled with making shooters and well, with first having two elevator games back to back I doubt there will be a third (I hope so though) So I would love to learn what goes into designing and fabricating a successful shooter


Look at a baseball or tennisball launcher basically 2 wheels spinning. Worked fine for every shooter we had in the past 11 years have the wheels spinning and have a lever or something that feeds the projectile (ball, disk etc) into it. If its real heavy you might need more than 2 wheels in series

1 Like

I think good shooters also have a programming aspect.
It’s nice to be able to shoot game pieces, but you also want to score them in the goal.
So, a good shooter almost always has some sort of speed control and you might also want to add an auto aim functionality.
My advice, when designing a shooter, include some space for an encoder and maybe some place to mount a camera. That will make your programmers’ life easier and your shooter definitely better if you can make the program work.
Good luck!


From what I’ve seen, making a good shooter comes down to three P’s: physics, prototyping, and programming.

Physics: Basic high school physics should give you ballpark estimates for release angles, release velocities, number of motors, gear ratio, flywheel mass, etc. This will give you a good place to start your nest step.

Prototyping: Quick prototype iterations are key to making an effective shooter. Start with modifiable prototypes where you can change as many variables as possible (wheel types, positions, spacing, gear ratios, backing, etc). As you progress with your prototypes, make more things constant until you have a final version that works well. You’ll use that to design the version going on the robot, and mean while you can hand the final prototype over for the next step.

Programming: You need to be able to control your shooter effectively for it to work well. It takes a good amount of time to get targeting and aiming code working (whether using a turret or the drivetrain). And getting flywheel speed control down is a must, otherwise your shooter will never hit its target. No matter how you’re determining the correct speed (lookup table, continuous function, etc) it takes time to get it honed in for the particular solution. The sooner you can get a working version to your programmers, and the sooner you can finish the robot mechanically so the programmers can get to work, the better your shooter will work.


There are so many different variables that go into designing a good shooter from a mechanical standpoint that it’s best just clearly defining your design constraints (I.e. how much space you can allocate on your robot, what your throughput will be, game piece properties, etc.) first and then working around that. Some things to look at while prototyping are:

  • Flywheel size/type/material also hood material for hooded shooters (try adding foam tape or something grippy to the hood, the less the ball slips, the more energy is being transferred to its forward momentum, this was very common in 2017 shooters but not always necessary)
  • Flywheel mass (a heavier wheel with more inertia will slow down less between shots and will impart more energy onto the ball. You can also accomplish this by making a separate heavy flywheel which is attached to the same shaft as the shooter wheels, either directly or though belts/chains/gears)
  • Flywheel surface speed and angular speed
  • Quantity of motors (more motors means the flywheel will slow down less during shots and will speed up quicker between shots, but not always necessary)
  • compression
  • amount of hood “wrap” for hooded shooters

So much this ^^^^

Every object we shoot is different. Some are squishy in predictable ways and some are squishy in unpredictable ways. Some are hard, some have texture and some have holes.

It is very easy to construct shooter prototypes. Make many many types. Explore the variables, compression, speed, wheel types, wheel configurations, flingers … Do research on past years games and see how successful teams have handled similar objects.

Every shooting year I see teams settle on a shooter strategy and then battling that shooter all year. Don’t be that team.


We often just used a camera and a sight to shoot and that worked pretty well. Adjust the sight in practice and then just look on the screen and line up and shoot. Worked in the frisbee, the basketball actually any ball ones.

1 Like

As someone who love shooters, here is my advice for the team that is new to building them.
You said it yourself, the team has struggled in the past with shooters. In that case, keep it very simple. One of the strongest robots that I have competed with was in 2016. If you get a good look at the video, You will see it is an incredible simple mechanism. There was a total of 8 wheels in the shooter, the outer ones gears 130% faster than the inner ones. Otherwise, the shooter was completely static. We finished that robot in only 3 weeks, and it helped us become one of the first 3 robot (if not only three, have not checked recently) to win two district events in the same year with the exact same alliance. The moral of the story? Build it simple.

Precision Prototyping
Prototyping might be important, but what the heck are you looking for in a good prototype? The most important will be precision shots. Viewing the side to side variance in shots is incredible important. Aim the shooter at a wall, shoot a game piece, and then mark it with tape. Continue to do so until you have a spread of the game pieces. The smaller the variance that better.
Do you care about accuracy? Not at all in a prototype. While some will say it’s important, it isn’t until the final design. yYu simply adjust the angle and direction of a highly precise mechanism, and it will become both and accurate and precise shooter. Alway focus on precision first.

That Good Squish
Compression is incredible key to getting a good shot. Some game pieces will compress and others will not. Testing to see how the compression affects the shooter can be critical to a good design.

Shooter Wheel Mass and the Flood of Neon
Another critical aspect is the number of game pieces you will be shooting in rapid succession. Each element you shoot has to be given some energy from the shooter wheel in order to propel it through the air. Thus, there is an energy loss in the shooter wheels for every game piece shot. If you are shooting a large number of game pieces, the energy may decrease faster than the motors can “replenish” it. If so, you will want to increase the mass of your shooter wheels so that they have more inertia within them once they are up to speed. However, too much mass, and your wheels will be sluggish to start up, and take more power than necessary.

Wheels? Never heard of them
You don’t have to uses a wheeled shooter! Many people forget that catapults and piston launchers also exist. Looking up tons of old videos for similar games will help you brainstorm new ideas.

My eyes!
When it comes to vision, work within your means. If you have the resources to make a great vision app, do so, but many teams have been very successful using flashlights. By connecting a flashlight next to your shooter, you can illuminate the location of where you are shooting, so your driver has reference into where they the game piece is going. This can be a very simple and effective solution to lining up.

The best of luck to you, and let me know if you have any more questions!


I never considered that but that makes a lot of sense, thank you!

That was us in 2017 we fought with a really terrible shooter that we designed our entire robot around

Make sure you have a good hooper as well. A lot of teams could short well but there hoppers jammed up alot


It all depends on what you’re shooting and how many you can shoot at a time. A shooter from a game like 2014 will look very different than a shooter from a game like 2017. If you’re shooting something that can vary (like the 2016 boulders, which were beaten up quite a bit with robots driving other them, compressing them a lot, etc.), then you might want to build a catapult style shooter (use surgical tubing like some robots did in 2014, springs, pneumatics, or motor drive it like 230 in 2016 ). If you’re shooting something with low variability, then you might have good luck using a hooded single flywheel shooter. It also depends on how many you’re shooting at once. In 2016, you could only hold one at a time so you didn’t need fast reload time and could afford a catapult. In 2017, you shot a lot at once and needed fast reload time , so you couldn’t use a catapult realistically. A game like 2012 is an interesting case as there was a lot of variance in the balls so a catapult would help, but you could hold 3 balls and you would want fast reload times afforded by a flywheel shooter. That is when you have to make a decision on your strategy.

As @Shivam said remember to make a good hopper or else you won’t be able to shoot anyway.


Can someone do a complete idiot’s walkthrough of the code with explaining what each is necessary for what function?

I’ve looked at our robot’s code and know how to comment/uncomment. But there are the ones where it says something like get.hand.k.left. or something like that when you don’t do that for other stuff. Why is this unique? For what will it be used for? I’m still learning the concept behind it from wpilib, with little regular, non-frc java. Maybe i should put this in my other thread too…

I suspect with the introduction of brushless motors, (NEO) more shooters will use speed feedback and gain precision and accuracy.

We’ve done shooters, both one and two wheel, and never bothered with feedback of any kind.

Whether you need speed feedback is largely a function of how much a variation in speed will affect your ability to get the game piece in the goal. As an example, in 2016 STRONGHOLD, teams which scored only in the low goal or into the high goal while sitting on the batter (usually right against the tower), could usually just run the motors at a fixed throttle level. Teams which tried to hit the high goal from the back end of the courtyard (which was a protected area) would miss high/low if the speed were off, so most of those needed speed feedback or at least voltage compensation in order to make the shot.

Flywheel inertia is the key , not mass, yes increasing the mass will increase the inertia however where that mass is located affects how much the inertia is increased. You want it heavy at the outside diameter not heavy near the center.

Increasing the power of the motors will have little effect on how much the wheel slows down during the shot, the time period is just too short for the system to react in time to add power during the shot. It does affect how quickly it gets back up to speed between the shots. We found this out way back in rebound rumble when we had a shooter powered by 2 775s, back when they were not know for being the most reliable. We had one fail while we were at a practice facility and didn’t have a replacement. The distance of the first shot did not change, what we had to change was the time between shots so that the 2nd and 3rd shots would still go the same distance. It was a fraction of a second that we had to wait. Considering we were running up to and over the weight limit dropping that extra 775 and motor controller was an easy choice to make.


A couple people have mentioned compression in passing, but I’ll add this detail since you asked for an idiots’ guide:

Something has to compress.

If the game piece is hard/stiff, there needs to be compression in your robot, from intake to conveyor to shooter wheels, in order to interact successfully with the game piece. If the game piece is squishy, you can have rigidity in your robot.


This is such an awesome comment and it cannot be understated! It applies to all game pieces and mechanisms, not just balls and shooters. Hard game pieces (e.g. hatches in 2019 depending how you grab them, power cubes in 2018, and gears and fuel in 2017) need “compression” on your robot mechanism. Soft game pieces (e.g. cargo in 2019 and boulders in 2016) can work with more mechanism rigidity.

I choose to use the word compliance rather than compression, since it’s a little more general and opens the designer up to more possibilities. Technically, compliance is the inverse of stiffness. It can apply to a material or to an entire mechanism. To illustrate the difference, try this thought exercise: For harder game pieces, a soft layer of foam on the hood of your shooter might work (compression) to accommodate slight variations in ball diameter and out-of-roundness while ensuring that there is always good contact between the shooter wheel, ball, and hood. A rigid shooter wheel that is mounted in a way that it is spring loaded against a rigid hood might also work (compliance) and accomplish the same thing. There are always multiple solutions to manipulating game pieces and sometimes these different solutions are more subtle than shooter wheel or catapult. This concept needs to be forefront in every student’s mind when they start prototyping and designing.


Ok dummy question… I guess if the flywheel is too heavy it’s inertia can cause issues with robot steering? Would it make sense to have a brake mechanism on the flywheel if it were large enough and only required intermittently (seems likely)?

Backspin is your friend!

With the exception of 2013’s frisbee launching, every object we’ve launched has been ostensibly a sphere. Backspin is useful for quite a few reasons when attempting to achieve precision results.