Hrm. Just to confirm, you have restarted the sandbox since I pushed this out? (I assume so, just checking). To test this, I am starting with a blank campaign, and adding a single token to it via upload. I am using this script, which creates a "copy" of a token whenever the token is moved left or right (you can move it up or down without copying it)...works best on a map with grid enabled: on("change:token:left", function(obj) { createObj("graphic", _.extend(obj.toJSON(), {left: obj.get("left") + 70})); }); I am logged in to a player account in the same campaign. Before this fix, it would create the copy but the player was unable to modify the token. After the fix, I can move a token (either the GM or player can do so), it creates a copy of the token, and I am able to move the token with the player. Note that the token you're copying has to have an eligible imgsrc parameter. I've also tried variations of setting "controlledby" on the "source" token to "all", the specific player, and none. Can you test this out in a blank campaign and let me know if you can still reproduce the error? If you can, are there any console error log messages showing up on the player's side (I assume there are...) If you can't reproduce with a blank campaign, let me know that, too. Thanks!