Turns out I was looking at slots the wrong way completely. What they actually do is search out in a cone shape from the base position, as you can see here:
The altar object is facing NORTH, and has RSFlags set to search NORTH from the altar's direction (i.e in front of it). The avatars then turn to face the altar to adhere to the slot property "FacingTowardObject" (facing = -2),
not limited to just 8 directions!
Slots inherently have a scoring mechanism, which is the greatest at an Optimal Proximity but decreases towards the max and min proximity. This scoring mechanism can help decide whether to stand or sit in certain situations, via 3 ints in the slot definition (sitting/standing/ground). When any of these are zero, routing to it in that way is completely ignored - otherwise slots where these are possible (eg, seats) are given a score bonus depending on the number in sitting/standing/ground.
For example, the TV has a standing score bonus of 1, but a sitting score bonus of 1000. This pretty much means that sims will always prefer a seat over standing while watching TV, since the difference in proximity score could never possibly span that range. Sims will still prefer seats closest to the Optimal Proximity though!
In this example the minimum proximity is 16 (one tile), but for things like the TV the minimum proximity can be multiple tiles, allowing for edge cases where sims will refuse to sit or stand right in front of a TV.
To get just one tile in front of the altar, you can search NORTH and then sneakily set the min AND max proximity to 16. The distance to the diagonal tiles in front of the altar will be slightly higher than 16 (22.63 via some quick math) so it will not come through in the slot result!
Gradient (float) probably defines the change in score per unit (1/16th tile), which is generally about 0.025. The meaning of snaptargetslot is still shrouded in mystery...