Hello everyone! There's a new update out today with some exciting new features. Without further ado, here they are! PayPal Roll20 now supports PayPal as a payment method for all sections of the site. Whether you're purchasing a Marketplace Set for your game, gifting your GM, or subscribing to access our powerful Plus and Pro features, you can now use your PayPal account. This is especially helpful for our international users who no longer have to deal with the issues of having to track down a credit card, or not knowing how currency conversion would work with their payment method. Just look for the "Checkout with PayPal" button on all of the places on the site where we previously had only a credit card form, and you're all set! Tutorial We've produced a brand-new tutorial for Roll20 that takes place directly inside the interface itself. Designed for both old and new users alike, it's a step-by-step guide to all the great things you can do in Roll20 while running your games. To start it, just select the "Tutorial" icon from the Games menu along the top of the page. Once you've fully completed the Tutorial, you'll get a special achievement and the Tutorial icon will go away. Let us know what you think! Jukebox Playlists There are now Jukebox Folders ("Playlists") in the Jukebox! You can create a new Playlist by clicking on the "Add" button in the Jukebox tab and selecting "Playlist". You can then drag and drop tracks into playlists just like the folder system currently works in the Journal tab. We've also updated the UI for the Jukebox to be more compact for each track listing. We've replaced the "Loop" checkbox with a toggle icon (so click it and it will light up, indicating the track will be looped, or click it again to switch it to a grayed-out icon, indicating non-looping.) Finally, the new Playlists come with their own set of play options. Next to the name of the playlist you'll find a "Play" button as well as a toggle for the "Play Mode" of the playlist. The options are: "Back to Back" indicates that each track will be played individually one after another. When the end of the playlist is reached, it will start again from the beginning. If a track is looped with this option when the playlist gets to that track it will just keep looping. "Shuffle" indicates that the tracks will be played in a random order. Note that the order is synchronized across clients so that it will still play in the same order for everyone. The playlist will continue playing shuffled until you pause it manually. You should not use looped tracks with this option or it will just loop the same track over and over. "All At Once" indicates that all tracks in the playlist will start playing once you play the playlist. Note that it is up to each track's individual loop settings to determine if it will loop after it plays once. You can mix and match looped and unlooped tracks with this option. Important to note on the new Playlists: While they are generally "in sync", each person's computer plays the tracks on its own. This means for example if a player joins the game after you have already started playing the Playlist, their computer will start playing it from the beginning, even if you are on Track 3. This isn't typically a problem since usually music is played when everyone is in the game, but it's best to think of the Playlists less as "everyone will play the same track at exactly the same time" and more as "this is a group of tracks that I want to play in general for my players -- the specific track they're on is irrelevant." You can use the playlists to create soundscapes using sound effects and music and the "All at Once" option. If you stop or play any individual tracks (even if it is inside the current playlist) then the Jukebox will leave "Playlist" mode and switch back to "Individual Track" mode. So basically you can either have complete control over what plays at what time by playing individual tracks yourself, or you can use the Playlist to let the system play a group of tracks itself -- but you can't do both at once. Now Playing Widget At the top of the Jukebox you'll now find a small "Now Playing" widget. This is what will be shown to players (rather than a listing of the tracks or playlist names). So players will only see tracks that are currently playing (and the names of those tracks). In addition, the GM can Stop a track directly from the What's Playing widget, which is useful to avoid needing to scroll down through a large Jukebox list to find a track and stop it. Pages Can Trigger Jukebox Tracks/Playlists There is a new option under the Page Settings dialog box at the bottom which will allow you to choose a Jukebox track or Playlist which will automatically play when you move the players to the page. Note that this only takes effect when a GM moves the Player Ribbon to the page, not for the "split the party" feature (since the Jukebox is global, not player-specific). Tabletop Audio Integration We've teamed up with the folks at Tabletop Audio to bring you their made-for-RPG audio goodness directly into your Roll20 gaming -- for free! When adding a new track to the Jukebox, you'll now notice an additional tab at the top of the dialog box that allows you to access the entire library of Tabletop Audio sounds. You can add them into your Jukebox just like any other track, put them in playlists, etc. For those of you who don't know about Tabletop Audio, it's a site created to provide 10-minute-long background audio tracks for RPG gaming sessions. You can find out more about them on their site: http://tabletopaudio.com
API Jukebox Support We've also pushed out an update to the API Server that allows you to have basic control over the Jukebox using API Scripts. Here's what's changed: New object type, "jukeboxtrack". You can use this just like any other object with findObjs(), get(), set(), etc. To play a Jukebox Track, just get the track object (for example using findObjs) and then set the "playing" property to "true". You can have multiple tracks playing at the same time. New property on the Campaign object, "_jukeboxfolder", which allows you to view information about the folders (playlists) in the Jukebox, just like the "_journalfolder" property allows you to view information on the folders in the Journal tab. Two new functions, "playJukeboxPlaylist(id)" and "stopJukeboxPlaylist()". The play function takes in the Folder ID (get it from the "_jukeboxfolder" property in the Campaign object) of a playlist, and will begin playing that playlist for everyone in the game. The stop function does not require any arguments, and will stop any playlist that is currently playing. The API documentation on the Wiki has been updated with this new information, so please check it out when you get a chance. Macro Buttons We've added the ability to rename and color the buttons on your macro quick bar. They now have a right click context menu with these two options. It doesn't matter if they came from abilities, global macros, or sheet rolls -- everything in your bar can be labeled how you want and recolored. The button text should change automatically for best contrast with the colors you choose. Token Action Ordering There have been quite a few requests for players to have better control over the ordering of your token actions. What we've done is replaced our current system that grouped token actions by source with a system that puts them in alphabetical order. Now, if you want finer control over the ordering of your token actions you can number them or use some other naming convention. Player Tokens Before this update players had the ability to drag the character avatar from their characters onto a page but that was it. We're experimenting with giving players the ability to also drag default tokens directly from the journal tab. This functions the same way GMs add default tokens. In addition players will also have the ability to delete tokens they control. We're hoping this change will take some of the responsibility for managing the tabletop set up themselves. By allowing players to create their own torch objects and group them with their tokens, or add themselves to a scene, or "summon" and "destroy" their own creatures, it will free the GM to focus on telling the story. API Token Bugfix In the process of making these changes we also fixed a race condition bug with copying tokens with the API. New tokens that are copies should pop out fully formed. Misc Fixes Fixed an issue with the layout of images in the External Journal feature. Fixed an issue with the "Show More" link in Firefox on the Game details page. If you kick a player from a game while in-game, everyone will now reload the game session which will cause the kicked player to be removed immediately from the game. The Master Volume slider in the My Settings tab will now save between game sessions (it's also a per-game setting). Fixed an issue with extremely long player names in the application. Enjoy all the new Roll20 goodness!