   variable map."
   [controller cue v]
   (with-show (:show controller)
-    (show/get-variable (find-cue-variable-keyword controller cue v))))
+    (when-let [k (find-cue-variable-keyword controller cue v)]
+      ;; Effect is still running to look up value
+      (show/get-variable k))))
 
 (defn- set-cue-variable-value
   "Sets the current value of a cue variable, which may be directly

  for the cue, whose name needs to be looked up in the effect's
  variable map."
  [controller cue v value]
  (with-show (:show controller)
    (show/set-variable! (find-cue-variable-keyword controller cue v) value)))

(defn- fit-cue-variable-value
  "Truncates the current value of a cue variable to fit available
  space."
  [controller cue v len]
  (let [val (find-cue-variable-value controller cue v)
        formatted (case (:type v)
                    :integer (int val)
                    ;; If we don't know what else to do, at least turn ratios to floats
                    (float val))
        padding (apply str (repeat len " "))]
    (apply str (take len (str formatted padding)))))


        fx-info @(:active-effects (:show controller))
        fx (:effects fx-info)
        fx-meta (:meta fx-info)
        offset (if (<= (count fx) room) (- 4 room) 0)
        x (quot note 2)
        index (- x offset)
        var-index (rem note 2)]
