diff --git a/modules/mol/alg/pymod/qsscoring.py b/modules/mol/alg/pymod/qsscoring.py
index aa37d37da25555a9749c95fec0f205fc8fb4f8f6..8686ff05c3f4b2d7cc11949f401db30226c5b495 100644
--- a/modules/mol/alg/pymod/qsscoring.py
+++ b/modules/mol/alg/pymod/qsscoring.py
@@ -856,7 +856,6 @@ class OligoLDDTScorer(object):
     self._lddt_mdl = None
     self._oligo_lddt_scorer = None
     self._sc_lddt_scorers = None
-    self._report = dict()
 
   @property
   def lddt_ref(self):
@@ -912,10 +911,17 @@ class OligoLDDTScorer(object):
           aln.GetSequence(1).GetString())
         modelseq.AttachView(model)
         aln.AddSequence(modelseq)
-        lddt_scorer = lDDTScorer(
-          references=[reference],
-          model=model,
-          settings=self.settings)
+        # Filter to CA-only if desired (done after AttachView to not mess it up)
+        if self.calpha_only:
+          lddt_scorer = lDDTScorer(
+            references=[reference.Select('aname=CA')],
+            model=model.Select('aname=CA'),
+            settings=self.settings)
+        else:
+          lddt_scorer = lDDTScorer(
+            references=[reference],
+            model=model,
+            settings=self.settings)
         lddt_scorer.alignment = aln  # a bit of a hack
         self._sc_lddt_scorers.append(lddt_scorer)
     return self._sc_lddt_scorers
@@ -952,12 +958,14 @@ class OligoLDDTScorer(object):
                              (ref_res.qualified_name))
         else:
           assigned_residues.append(ref_res.qualified_name)
-        scores.append({
-          "residue_number": ref_res.GetNumber().num,
-          "residue_name": ref_res.name,
-          "lddt": mdl_res_renum.GetFloatProp(self.settings.label),
-          "conserved_contacts": mdl_res_renum.GetFloatProp(self.settings.label + "_conserved"),
-          "total_contacts": mdl_res_renum.GetFloatProp(self.settings.label + "_total")})
+        # check if property there (may be missing for CA-only)
+        if mdl_res_renum.HasProp(self.settings.label):
+          scores.append({
+            "residue_number": ref_res.GetNumber().num,
+            "residue_name": ref_res.name,
+            "lddt": mdl_res_renum.GetFloatProp(self.settings.label),
+            "conserved_contacts": mdl_res_renum.GetFloatProp(self.settings.label + "_conserved"),
+            "total_contacts": mdl_res_renum.GetFloatProp(self.settings.label + "_total")})
     return scores
 
   @property