This definitely happens with the first access to a newly created object. I don't know why though. Here is the log of the newly created object: "Object Created:" {"_id":"-JF7TiSVJBIASKQ8cxQP","_pageid":"-JEPVW09YWGDxBXQWCyv","left":1225,"top":712,"width":70,"height":70,"rotation":0,"layer":"objects","isdrawing":false,"flipv":false,"fliph":false,"imgsrc":"<a href="https://s3.amazonaws.com/files.d20.io/images/2899512/hCM47Rg9qaw9ZZ7mxcEafw/thumb.png?1390874492","name":"MMRangeObject","gmnotes":"Aura" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/2899512/hCM47Rg9qaw9ZZ7mxcEafw/thumb.png?1390874492","name":"MMRangeObject","gmnotes":"Aura</a> tracking object for MoveManager. This is safe to delete.","controlledby":"","bar1_value":"","bar1_max":"","bar1_link":"","bar2_value":"","bar2_max":"","bar2_link":"","bar3_value":"","bar3_max":"","bar3_link":"","represents":"","aura1_radius":"30","aura1_color":"#666688","aura1_square":false,"aura2_radius":0,"aura2_color":"#CC8888","aura2_square":false,"tint_color":"transparent","statusmarkers":"","showname":false,"showplayers_name":false,"showplayers_bar1":false,"showplayers_bar2":false,"showplayers_bar3":false,"showplayers_aura1":true,"showplayers_aura2":false,"playersedit_name":true,"playersedit_bar1":true,"playersedit_bar2":true,"playersedit_bar3":true,"playersedit_aura1":true,"playersedit_aura2":true,"light_radius":"","light_dimradius":"","light_otherplayers":false,"light_hassight":false,"light_angle":"","light_losangle":"","sides":"","currentSide":0,"lastmove":"","_type":"graphic","_subtype":"token","_cardid":""} And here is the log of the same object found by the next function run (With several seconds wait between the two runs of the functions, so there was certainly time for the object to be created.): "Found existing object" [{"_id":"-JF7TiSVJBIASKQ8cxQP","_pageid":"-JEPVW09YWGDxBXQWCyv","left":1225,"top":712,"width":70,"height":70,"rotation":0,"layer":"objects","isdrawing":false,"flipv":false,"fliph":false,"imgsrc":"<a href="https://s3.amazonaws.com/files.d20.io/images/2899512/hCM47Rg9qaw9ZZ7mxcEafw/thumb.png?1390874492","name":"MMRangeObject","gmnotes":"Aura" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/2899512/hCM47Rg9qaw9ZZ7mxcEafw/thumb.png?1390874492","name":"MMRangeObject","gmnotes":"Aura</a> tracking object for MoveManager. This is safe to delete.","controlledby":"","bar1_value":"","bar1_max":"","bar1_link":"","bar2_value":"","bar2_max":"","bar2_link":"","bar3_value":"","bar3_max":"","bar3_link":"","represents":"","aura1_radius":"30","aura1_color":"#666688","aura1_square":false,"aura2_radius":0,"aura2_color":"#CC8888","aura2_square":false,"tint_color":"transparent","statusmarkers":"","showname":false,"showplayers_name":false,"showplayers_bar1":false,"showplayers_bar2":false,"showplayers_bar3":false,"showplayers_aura1":true,"showplayers_aura2":false,"playersedit_name":true,"playersedit_bar1":true,"playersedit_bar2":true,"playersedit_bar3":true,"playersedit_aura1":true,"playersedit_aura2":true,"light_radius":"","light_dimradius":"","light_otherplayers":false,"light_hassight":false,"light_angle":"","light_losangle":"","sides":"","currentSide":0,"lastmove":"","_type":"graphic","_subtype":"token","_cardid":""}] Yet an attempt to SET that found object resulted in an error: /home/symbly/www/d20-api-server/node_modules/firebase/lib/firebase-node.js:1 orts, require, module, __filename, __dirname) { function f(a){throw a;}var j=v ^ Error: Firebase.child failed: First argument must be a non-empty string and can't contain ".", "#", "$", "[", or "]". at Error () at Ha (/home/symbly/www/d20-api-server/node_modules/firebase/lib/firebase-node.js:12:204) at G.W.H (/home/symbly/www/d20-api-server/node_modules/firebase/lib/firebase-node.js:126:213) at TrackedObj._doSave ( All subsequent runs of exactly the same function, after SaveScript is pressed, work perfectly.