Contact Explained
Contact Explained is the copy of a forum post by Nightwulf to explain precisely what the contact rating does.
Intro
Any time the batter swings after the pitcher has released the ball, a number of calculations are performed. Once it's been determined that the batter will hit the ball (if the ball is over the plate, if the bat is in range, if the pitch isn't a sinker which is hitting the ground, etc.) the calculations for the hit itself begin.
Determining the hit index
One number used is the left/right position of the ball on the screen. It's tough to determine the absolute minimum and maximum range of this value without artifically raising curve ability stats for appropriate handed pitchers, but I'm fairly sure this number ranges from $6x-$Ax (that is, somewhere from $60-$6F to $A0-$AF). The higher the number, the further the ball is on the right side of the screen. I'll refer to this number as "ballpos."
The next number used in this calculation is the left/right position of the batter in the box. This number ranges from $78 to $89. The higher the number, the further the batter is toward the right side of the screen. Note that this holds true for both left- and right-handed batters. I'll refer to this number as "batterpos."
These values are used in the following equation:
ballpos - (batterpos - $0C)
It's late, and I can't come up with anything better, so I'm calling this value the "hit index." This is also where I'm not 100% clear on things, but I feel it's accurate enough to report.
For any successful hit, the hit index will be between $00 and $0F. The more "lined up" the bat is with the ball, the number will fall more towards the middle of the $00-$0F range. If you're barely making contact, the number will fall closer to one edge or the other of the $00-$0F range.
Using the hit index
The hit index is used in a lookup table, which is listed below:
If the hit index is: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F Then this number is returned: 06 05 04 03 02 01 00 00 00 00 01 02 03 04 05 06
So, the more "lined up" the batter is to hit the ball, the lower the number returned from the lookup table. If the hit index is $06-$09, then zero is returned from this lookup table. This is where what we call "contact" comes into play.
If the number returned from this table is zero, then the hit is calculated with whatever power your batter has. If the number is NOT zero, then the batter's contact is subtracted from his power.
So, it's true that players with lower contact are (generally) better hitters. Players with a low contact will get less of a penalty subtracted from their power on a bad swing.
Credits
This entire article was a copy/paste job from Nightwulf's original forum post on the subject.