# How does an atom decide what to bond to?

Given for example, a Hydrogen atom (that can only have 1 bond max), that is sitting on a bonder next to two other atoms that are also on bonders and have available bonding slots, how is it determined which atom the Hydrogen ends up bonding to? I've tried experimenting with it being a priority order of directions, but that doesn't seem to be correct.

-

I'm afraid there's no real science behind this. Each bonder has a priority number likely based on the internal data structure (array, linked list, whatever). The game just processes this list in a first through last order. So the bonding order in game is just how the bonders happen to be arranged. I would be nice if they were labeled, but as far as I know there's no way to get their priority in game. So with two bonders linked, it just goes through the list sequentially. For example, with 4 bonders the list of checked links would look something like this:

1. (1, 2)
2. (1, 3)
3. (1, 4)
4. (2, 3)
5. (2, 4)
6. (3, 4)

Which is simply an ordered list of the pairs of priority numbers. With that knowledge, you just need to know which bonder has which priority. Though experimentation I've found that:

For 4 bonders in a fresh level the bonder priority numbers are:

1 - 2
| . |
4 - 3

For a fresh level with 8 bonders the bonder priority numbers are:

1 - 2
| . |
4 - 3
| . |
5 - 6
| . |
8 - 7
-
No real science needed, but this looks promising as a definitive answer. I'll try it out tonight to verify that it matches my experience. – bwarner Dec 22 '11 at 17:36
In a game where one does not need to concern themselves with stereochemistry, induction effects, kinetics, or thermodynamics, science doesn't play much of a role. – Nick T Dec 24 '11 at 0:12
Great answer, there really should be an in-game way to determine this apart from remembering the original configuration. – Andrew Moylan Dec 26 '12 at 2:37
What if the eight bonders are initially in a horizontal layout? – ZeroOne Jan 31 '13 at 7:04
@ZeroOne Sorry, I haven't seen that configuration, I didn't ever finish the game :/ Let us know what you find out. – MichaelHouse 'Byte56' Jan 31 '13 at 15:58

I don't think that there is a strict order of bonder preference; it is based on something else.

I did the following experiment: three bonders in a horizontal row, with an unbonded H at each one. I recorded the results of the six combinations of bonders.

#    order    result    side
a    1 2 3    H-H H      L
b    3 2 1    H-H H      L
c    2 3 1    H H-H      R
d    1 3 2    H-H H      L
e    3 1 2    H H-H      R
f    2 1 3    H H-H      R

I reran this many times, and there was always a 50% split with one group preferring 'L' bonding, one group preferring 'R' bonding, and one group being split. (Each group is identified by the bonder in the middle.)

So there is evidently some structure to the evaluation, but each of these six cases is contradicted by another one (if we assume the bonders evaluate in order); i.e., if (a) is the correct order, then why in (b) does the bonder prefer (2,3) over (1,2)? This is true for every case.

The mouse wheel trick seems to be doing something (it made a click and I assume processed an action), but I could not change the output of (a).

-
If your bonders 1, 2 and 3 have priorities 1, 3 and 2, respectively, then Timbo's answer would explain this. – Brilliand Jun 19 '14 at 20:39

I used a few hours testing. The result is that there is a hidden priority, but the bonder only checks the bonder right and under it. That means if there are 4 bonders build up the following way:

2 3 1
4

First bonder 1 will check below and right of it and can't find anything to bond. The second step is that bonder 2 will bond with bonder 3 and 4. Afterwards bonder 3 bonds with 1 and last bonder 4 doesn't find anything to bond.

If a bonder has two possible connections (right and under it), then it will bond first with the bonder with the higher priority (lower number). That means the second step bonder 2 will first bond with 3 and then with 4.

-

The bonders each have a "hidden priority", where they will try the other bonders in a certain order. If it's not doing what you want, you can swap the bonder's position around.

Sorry, can't find a good source to cite for this.

-
There appears to be some kind of hidden order, but it's WEIRD. I laid out C, H, C on 3 bonders horizontally and tried bonding. For the 6 combinations of those 3 bonders, half bonded C-H C and half bonded C H-C, but any pattern is not clear at all. – lilserf Nov 29 '11 at 21:39
@lilserf As far as I can tell, the logic is something like "Determine what the user is trying to do, then come up with a way to do something else". :p – bwarner Nov 29 '11 at 22:16

Apparently, if you 'mouse over' the bonder and roll the mouse wheel up/down, the bond order of the bonders changes. It worked for me.

-