It is very important to select the proper drivetrain for your robot. You need to consider specifics of the game. Your driving style and experience, as well as requirements for lateral movement, power, and speed among other factors are integral to selection of a drivetrain.
Tank drive is most common type of drive seen, as well as the simplest. A Tank drive consists of two rows of wheels parallel to each other on either side of the robot. There are many different subsets, including 4-wheel, 6-wheel, and whether the use of traction wheels included as any of the sets of the wheels.
H-Drives are built as Tank drives are, except there are wheel(s) mounted perpendicular to the drive which allow for lateral movement. All wheels must be omni wheels for the drive to be able to function.
Holonomic drive, also called an X-Drive, consists of wheels mounted at angles from each other. It is good for lateral movement, and increases speed and power of turns. However, linear drive speed and power are decreased due to the nature of how wheels run toward each other to move linearly. All wheels must be omni wheels in order for this drive to function.
Mecanum drive uses 4 mechanum wheels to move linearly forward, backward, left, and right. Mechanum drives are much harder for another robot to push around, however are usually slower than a H-drive.
Nylocks are heavier, but have much greater grip. They likely will not significantly loosen even after extensive use. Additionally, not tightening them (and allowing the screw to spin freely) is perfect for rotating joints.
Keps are lighter and are the quickest to use. Their teeth help maintain its position when tightened, but not as much as nylocks and cannot be rotated once tightened. Perfect for prototyping or securing less vital structure.
Plain nuts are the lightest and are used mostly on parts with places for the nuts designed onto them, such as the clamping shaft collar or V2 rack gears.
basic gear ratios
Builders can trade motor speed for motor torque (and vice versa) by using a system of gears to change the speed of the output shaft.
gears have a set number of teeth, and when gears mesh, the output gear rotates however many teeth the input rotated, not the number of rotations the shaft went through. Builders can use this to their advantage so that the output gear rotates faster, but with less torque (larger gear -> smaller gear), or slower but with increased torque (smaller gear -> larger gear).
If gear sizes become too extreme, more advanced builders may use compound gearing to exponentially modify their gear ratios. This is done by having the output shaft from previous gearing become the input shaft for more gearing with different gear sizes.
no cantilevered drive wheels
As a general rule, for anything on a shaft other than shaft collars and washers, the shaft should be secured to structure on both sides of whatever it is supporting.
Not doing this results in the shaft having a lot of wiggle room, as typically seen when wheels are exposed on the outside of a robot.