My team used chain and had o problems with it as long as it was the proper tension. We had the chain connect the wheel, ta sprocket connected tohe motor, and another sprocket which helped provide tension.
It has worked the entire season, except a practice match at worlds, where we didn’t see that one of the bits that holds the chain together had broken.
The Ideal solution is to have a “Direct Drive”. This would have your wheels and motors on the same shaft. This is the most efficient method of all especially if you can get away with not synchronizing the front and rear. You can change the speed/torque of the drive by changing the motor’s internal gearing or changing the size of the wheel. This is the simplest, most efficient way to move your robot around.
Well last season my team did a 60 tooth gear to a 36 tooth gear for speed and it paid off. We used the regular gears and I thought that was finicky. I didn’t really use chain that often so I really didn’t know if it was good or not.