The sendChat API function only partially works when the 'who' is a character. The message is posted to the chat with the correct 'by' text, but the character's avatar (if set) does not appear. If a player/GM with control of the character posts the same message manually, the avatar appears in the chat as normal. This problem does not occur when posting as a player -- sendChat('player|'+id, message) -- and if you post a message with an arbitrary name, there's no avatar to display anyway. Sample: on('ready', function(obj) { var test = findObjs({_type:'character',name:'test character'})[0]; sendChat('character|'+test.id, 'this is a test'); // character "test character" will post "this is a test" but no avatar will show test = findObjs({_type:'player'})[0]; sendChat('player|'+test.id, 'this is a test'); // first player will post "this is a test" and avatar will show });