Is odometry too hard, and require too many sensors? Is GPS too pricey, annoying, and not even present during non-skills matches? What are your tools for programming a good autonomous without these?
Turning? Inertial meter based pid for turning. You can even set your left or right wheels to zero while executing to turn and translate.
Driving Straight? Combine the inertial based turning pid, with a regular PD control function for your drive motors to reach their destination while helping maintain a heading.
Checking your position? When your robot is at 0, 90, 180, or 260 degrees, an optical distance sensor will help give you your coordinates.
Run into something, or need to know if you are playing an auton tug of war? Use the inertia.collision or motor.current or velocity functions to know if you are going the speed you should be going.
Picking up an object? Use the vision sensor to write a drive straight PID, replacing your inertial meter with the horizontal object position of your vision sensor, so that the colored object stays centered in the camera while you drive towards it.
…Then use a line reader or distance sensor to make sure you grabbed the object. Pretty easy coding here.
Furthermore, if objects are placed well, you can use trig+inertial meter when you grab an object to calculate your position.
Also, use voltage, not velocity when telling the motors to spin.
It is always good to know your tools.