<font face="Arial, Verdana">Hello, </font>
The following is my (limited) experiences from aligning:
Z length <-- First roughly measure the distance from table to your endstops. Then subtract 20 from that. Set that as your Z length. Later you will use G32 S2 and that will measure the exact length for you. It is important that you set Z length to less than your actual length if you plan on autoleveling with probe. The probe will only register contact when below what you set as z=0. Thus before using G32 S2 you go to Z=0 which will then be some 20mm above bed. And then it aligns it self nicely.
Horizontal radius when centered (called something like Horizontal Rod in EEPROM in Repetier Host and called <font color="#333333" face="Open Sans, Arial, serif">ROD_RADIUS in configuration.h) - I found this to be the most critical length of them all. </font>
<font color="#333333" face="Open Sans, Arial, serif">
</font>
<font color="#333333" face="Open Sans, Arial, serif"> </font>Angle of column A/B/C - A circle has 360 deg and you are seeing this from the center of your print area (this 120deg x 3). On mine I found that 55mm from the center I get a deviation of some ½ mm between the two towers when changing one tower by ½ a degree - My printer has 210 mm rod lengths.
As you said, in configuration.h you also find:
<font color="#333333" face="Open Sans, Arial, serif"><div>END_EFFECTOR_HORIZONTAL_OFFSET
CARRIAGE_HORIZONTAL_OFFSET
</font></span></div>
In my experience they also have to be set but that could be false as I was changing many parameters at the same time. They don't hurt anyways.
Finally remember that in configuration.h you also find:
<font color="#333333" face="Open Sans, Arial, serif"><div>#define Z_PROBE_X1 20
#define Z_PROBE_Y1 20
#define Z_PROBE_X2 160
#define Z_PROBE_Y2 20
#define Z_PROBE_X3 100
#define Z_PROBE_Y3 160
These values are used for auto-leveling - They have to be changed for small printers like ours.
Don't do like me and spend hours trying to figure out why auto-leveling keeps going outside print area....
Finally, finally - One thing I found, If you have an angle
You can put the long side on your bed and the other one to your towers to see that the bed is level to the towers. That way you can convince your self that whatever off-sets you get when leveling is related to wrong lengths set in the config.
You can then setup a script that goes close to one tower and then the adjacent point (which will be between two towers). If you think about the cosine / sinus relation of angles on the rods that should tell you a lot when you then get different Z values. I found that more efficient then measuring at the 3 towers as suggested else-where.
</font></span></div>