I threw this together for you: on('ready',function(){
"use strict";
on('chat:message',function(msg){
var player,character;
if('api' === msg.type && msg.content.match(/^!(makesheet|charsheet)/) ){
player=getObj('player',msg.playerid);
if(player){
character=createObj('character',{
name: 'Sheet for '+player.get('displayname'),
controlledby: (playerIsGM(msg.playerid) ? '' : msg.playerid)
});
sendChat('','/w "'+player.get('displayname')+'" Created a sheet for you: <a href="<a href="http://journal.roll20.net/character/'+character.id+" rel="nofollow">http://journal.roll20.net/character/'+character.id+</a>'" style="color:blue;text-decoration:underline;">Sheet for '+player.get('displayname')+'</a>');
}
}
});
});
!makesheet or !charsheet will create a character for the player issuing the command, assign them control of it, and whisper them a message with a link to the sheet. For a gm, it does not assign them control but does create the character and whisper the link. For sizing a token, you can use TokenMod : !token-mod --set width|[[70* <TILES> ]] height|[[70* <TILES> ]] Just replace <TILES> with the size you want. Or possibly a roll query: !token-mod --set width|[[70*?{Size|1,2,3,4,5,6,7,8,9,10}]] height|[[70*?{Size}]]