Drop downs aren't too hard to assemble in a new game. A quick way to get all of the custom scripts from an older game into a newer one is to use the bookmarklets below from the Aaron ( more here ). It will concatenate all scripts into one uber script. I prefer to do them manually myself, to keep them separate. Note that however you assemble your new scripts, you will need to set whatever config they require. Last time I did this, I took careful note of what config macros needed to be run, and put them into a setup macro. That makes config of the next game a bit simpler. Copy ALL API Scripts ref.( <a href="https://app.roll20.net/forum/permalink/2995136/" rel="nofollow">https://app.roll20.net/forum/permalink/2995136/</a> ) You can use this Javascript Bookmarklet to build a text area with all the scripts concatenated: javascript:$('<textarea></textarea>').attr({id: 'TheAaronAllScripts'}).css({width:'100%',height: '30em'}).text($('.script .editor').map(function(idx,e){return e.env.editor.getValue();}).toArray().join("\n/* ############################### */;\n\n")).appendTo('body'); The above you can copy and put in a bookmark in Chrome. For Firefox, you need a link to right click and add bookmark, so far as I know. This might work to copy in Firefox: <a href="http://javascript:$(' Bookmarklet Copy Only ACTIVE API Scripts ref.( https://app.roll20.net/forum/permalink/5019380/ ) javascript: (function(){let disabledScripts=$('ul.nav.nav-tabs li a.disabled').map((idx,e)=>$(e).attr('href').substr(1));$('<textarea></textarea>').attr({id: 'TheAaronAllScripts'}).css({width:'100%',height: '30em'}).text($('.script.tab-pane').filter((idx,e)=>!_.contains(disabledScripts,$(e).attr('id'))).map((i,e)=>$('.editor',e)[0]).map(function(idx,e){return e.env.editor.getValue();}).toArray().join("\n/* ############################### */;\n\n")).appendTo('body'); }());