In Foldit, a ligand is an atom or small molecule which is not part of the protein, but it expected to interact with the protein.
Some puzzles have multiple ligands. Ligands may be locked or unlocked. An unlocked ligand may have multiple rotamers, or different shapes it can assume.
Ligands and Foldit functions
Since a ligand has a segment number, many Foldit Lua functions can work with a ligand, but the results may not be as expected in all cases.
The function structure.GetSecondaryStructure normally returns "H" for helix, "E" for sheet, or "L" for loop, but returns "M" for molecule for a segment number that represents a ligand.
The function structure.GetAminoAcid normally returns a single-character amino acid code, but it may return "unk" or some other value for a segment number that represents a ligand.
The function structure.GetAtomCount returns an atom count.
The function band.AddBetweenSegments can band to or from a ligand segment.
The function structure.IsLocked can indicate whether a ligand segment is locked.