Professor Nader "Welcome to the URealms Forums! Please make sure to read the rules before posting!
Your posting ability may be restricted for the first 24 hours!"

[BETA] Babble Buds- A Virtual Puppet Show Program



  • In both the current version and the next version, assets are synced between all clients. The beta version will better handle things like updating assets and track where each asset came from and some other cool things, but already its set up so that each person can have their own assets and the different users don't need to worry about having all the assets.
  • @thepaperpilot good luck with the beta! Looking forward to it!
  • @thepaperpilot Oh damn, thank you. I'm gonna have alot of fun with this now.
  • Well I have a few thoughts about this,

    First of all, amazing work and you beat me to the punch. I was planning on making this same thing to work on my network coding skills. 
    Secondly, This will be awesome for the community campaigns.
    Thirdly, This seems to be a bad idea to leave this open source. Rob has an amazing community but he has something every Role Playing youtube series doesn't have. These puppets! Eventually you're gift will become a curse to the same person who inspired you to do this.

    Lastly even though I just expressed how i feel this is a bad idea to have this open source or free to the public with out some limiter like a watermark of some kind. I will be making the same for personal use. and maybe anyone I personally play with. I just wanted to ask if this has Android support?
  • I feel having a publically available alternative to Puppet Pals doesn't detract from Rob's show. He still has the amazing community, the players, the lore, and so on. I don't want to speak for Rob, but I suspect based on his having released the URealms mod for free, and his talking about eventually making a freely available URealms program with puppet pals integrated within it, he doesn't mind the idea of such a program being available for free, since that's an idea he's had to do himself.

    Also, I'm not sure what your point is about it being open source and lacking a watermark. I do that because I personally prefer open source, non-watermarked software, and assume others appreciate it as well, what with all the benefits of Free Software (as in freedom).

    Also, I made this tool in electon, which cannot export to android. If it happens, it'll only be after I'm satisfied with the desktop client, because I'll need to almost completely start over, and right now there are too many changes occcuring to the desktop client to feasibly create a second branch and maintain feature parity between them.
  • @thepaperpilot ;
    Well when Rob releases the stand alone version of Urealms it'll still be his work and not easily removed from his name, the show, and the brand. Therefor other shows such as "Twits and Crits", "Heroes and Halfwits", and "Critical Role", will not take his unique style for themselves with out at least referencing the brand. How I've described this honestly makes these creatures seem bad, but its not like these larger creatures have the ability or memory to cite it every episode. 

    As much as Rob is a great guy and the entire crew is comical genius. At the end of the day this is his job, and everything he makes is a brand he is furthering in his business. With programs such as this one that is exactly why he asked you to remove the assets from his crews efforts. It's simply a business decision. Hence the water mark, or closed source, or probably the best way is a terms of service saying that people must site the programs name and creator for every individual media making any money related to this program at all.

    But as I've said this is awesome that someone released this for the community and I'd love to see what other works you bring to the table top in the future. As for the android version I may be doing this here soon for fun just so if players all join in person this will still be possible and linkable to a computer. 

  • I don't feel your example works, of other tabletop shows potentially using Babble Buds and by doing so taking away from Rob's brand. Babble Buds works as a tool, divorced from any specific style, and can be used in different ways by different creators. For example, in Tower Offense all the puppets were full color and used lots of bobble heads, and it came across significantly different than a traditional URealms puppet pals scene. It's sort of like saying The Adventure Zone and Critical Role have the same style because they both use D&D. The tools they use do not dictate their style, and both can co-exist easily because there are different reasons to like each one. Additionally, they don't mention they're using d&d in every episode, because it's not even especially relevant to why people watch the content - because of the story, the personalities, etc.

    Using URealms assets originally when showing off babble buds was a different issue, where I actually was effectively connecting Babble Buds to the URealms brand, which is no longer happening after Rob asked me to remove the assets, and I complied. That interaction doesn't really present a problem solved by adding watermarks or terms of services. I would love to see my program get used by as many people as possible, because that makes me feel good about the work I put into it. I don't care how people use it, nor if they even know I exist. I want to help the program spread by making it as nice for the end user as possible - that means not adding watermarks letting them know I made this tool, or requiring them to mention my name when they use it. That's why it's CC0, and that's why its open source. 

    You may have been suggesting a URealms watermark or a ToS that required people to mention it was based off puppet pals when using it commercially, but I'd like to remind you it is not affiliated with URealms in anyway, and I wouldn't put a URealms logo in this software because that's the same kind of thing that got Rob to initially take down the download link, because it was distributing URealms assets I don't have the right to distribute. What I have done (in the beta version, coming sooooon) is add a link to this forum thread in the "help" menu, and mention Puppet Pals as the inspiration for the project, in the "about babble buds" screen.

    To quickly mention your last bit about making an android version, I suggest you go for it! You could even use Babble Buds as a reference, since its open source, to get an idea of how to go about making the app (and if you use React, you can probably copy lots of the code, to, since that'd let you make the app using javascript, the same language I used). In fact, you could even let it connect to Babble Buds clients, which would be really cool. You could also look at the source code of Marionette Mates, another open source Puppet Pals alternative, that was written in Java and is no longer in active development, here.
  • edited November 2017
    How do the "layers" work? Is it similar to Photoshops UI that it has "groups" with "layers" in it that show the "layer" at the top at the bottom "layer" at the bottom? like in the picture shown below.

    Or is it organized differently? Do you maybe have a screenshot of it?
  • edited November 2017
    There is a body layer, head layer, a mouth and an eyes layer for each emote, a hat layer, and a props layer (and they appear in that order, with the body on the bottom and the props on the top).

    The head, emote, and hat layers move when the puppet's head bobbles  (if head bobbling is enabled for that puppet), body and props are always static. If you don't use head bobbling, you can treat body and head as the same layer, and same with the hat and props layers.

    So based on your screenshot, you'd put the images in your body folder onto the "body" layer in babble buds, the "Skull/head" layer onto the head, you'd have emote-specific Mouth and Eyes layers to deal with, moustache would potentially also belong in the mouth layers if you have it changing emote to emote, hair and hat would go on the hat layer, and the umbrella and hand images would go on the props layer.
  • Any updates on when it will come out. take as long as you need though don't rush it.
  • It's close, but I've been busy as the semester has wound down. Shouldn't be much longer though.

  • @thepaperpilot looking good, good luck!
  • awesome that is looking good @thepaperpilot ;

  • Question, I know this runs on a .exe file. (Use a mac >.>) I am trying to use wine the program to run the .exe file program however it won't load. Do you have any ideas as to why?
  • Wine shouldn't be necessary, as the operating systems wine works with (mac and linux) already have versions of babble buds built for them. I would recommend downloading the "-darwin-x64" version, as that's the mac build (darwin is the name of the kernel that macOS rests upon).
  • edited January 2018
    Alright, its finally (beta) release time!

    I'm going to be up front: I wasn't able to get asset bundles into this release. It will be a really cool feature when it finally is implemented and trust me when I say I did all I could to try and get it in this release, but there's just too much other stuff I want you all to be able to play with for me to hold back this release any longer. Plus, my life is going to get a lot busier for awhile, and I still don't know when I'll be able to work on asset bundles, let alone finish them.

    Anyways, there's lots of cool stuff to check out here. The thing you should notice first is the welcome screen, which will populate itself with your most recently opened projects - with thumbnails and everything! Once inside the interface has seen lots of minor improvements that should just make it easier to use. Most of all the changes should be readily apparent and intuitive, but there's some things I haven't come up with a good way of making immediately apparent to the user, like right clicking an asset in the asset library to access its settings, or that you can do stuff like move assets around in the puppet editor by using the arrow keys. There are a lot of new features and I'm kinda too lazy to make a full feature list, but I suppose if your really interested you could look at all the commits since the last release here: Otherwise, I'd also like to suggest you go through the menu buttons (particularyl "view"), there's some neat stuff in those.

    Some of the biggest changes made were all about how assets are stored and referenced. Because of these changes there are some new cool things like being able to update assets, sync these changes, and making sure no one is able to do things like delete or replace an asset made by someone else, and syncing assets between clients should be much more smooth and stable than previously.

    I hope you enjoy this release, and know that feedback is always welcome and appreciated, even if I won't be able to work on this project actively for a bit. Here are the new download links for this release: Windows will want the windows build, mac users the darwin build, and linux the linux build. For all of those, you probably want the "x64" version, if there are any errors about the architecture or not being able to run the program, try one of the others.

    Now, a little about the future. Part of what I'll be busy with over the next few months is actually related to babble buds, or rather the puppet rendering engine I made that it uses. I'll be potentially making a game using babble buds for the cutscenes, similar to tower offense (mentioned here a few posts back), but for a larger game with a larger team over a longer period of time. And, its in unity, using c# instead of javascript. So, I've already made a basic port of babble.js (the engine) to c#, which I'm calling babble.cs, and if anyone is interested in using babble puppets in a unity project, you can check it out here: Please note its not really ready for production yet, as it is still being worked on, but at the same time if you need it now, then it is plenty usable, and the provided demo project should make it clear how to use it. Additionally, I'll be working on a piece of software to help write cutscenes for the babble puppets, as up til now its been tedious manual labor. It'll be called "babble movie maker" and probably won't be ready for general use for a substantially long amount of time, but it's in the works. And of course, eventually there'll be a 1.0 release of babble buds itself, with all sorts of cool things like asset bundles (urgh!), being able to browse community made puppets from within the program, and some features to make connecting to other users much easier, since its currently a hassle still. Once again I hope you enjoy this current release, and rest assured there's still a lot more down the pipeline, but it'll be awhile since I'm just one guy, and I've got a lot on my plate. Thanks!

  • @thepaperpilot good job man! look forward to seeing the outcome of the moviemaker. Good luck!
  • it's really cool^w^cheers papers!
  • edited January 2018
    Can't wait until people who are good at art start making and sharing puppet pieces.  :3
  • @notalizard I'm not completely terrible, I might have some stuff I can share

  • edited January 2018
    A minor change to some, but you no longer have to pick between animations OR bobbing heads, and can have both ^w^
  • @thepaperpilot How ould you suggest we do the eyes when making puppets? Because so far whenever I've made puppets, I put the eyes on the head layer, and eyebrows on the eye layer. This is because for most of the emotions I just use the same eyes, but want to change only on "Wink" or "Kiss." I do that because I cant replace the eyes in the exact same spot for each emotion and I don't want my eyes slightly shifting around when I change emotions.

    tl;dr Is there a way to keep eyes on the eye layer in the same spot over several emotions?
  • @MasterDJV I havn't updated to beta yet and unsure if this has been changed, but if you select an asset and click the edit menu, then click copy, you can paste that asset into new emotes in the same spot, size and rotation. This is also helpful with making emotes that have the same mouth.
  • edited January 2018
    @MasterDJV As ninja_goose mentioned, copying and pasting (ctrl+c, v also works) assets will place them in the same spot, but you can also hold down shift or control or both when moving assets to have it snap to various lines and grids that should help place assets in the same position.

    Quick edit: You could also temporarily put the default eyes on the head layer, then use that as a reference when placing the emote's eyes, then remove the reference one. You can use the arrow keys to shift the selected asset pixel by pixel until its exactly where you want it.
  • Yes I know this release was promised to take waaay longer than it actually did, but after the last version inspiration struck and I decided to fix the most pressing issue with babble buds: how much of a pain it is connecting to other users.

    Before, you needed one player to host, and for other players to connect to them. This often involved port forwarding, using a hack like hamachi, or hosting it on a server somewhere, something that shouldn't be expected of every user.

    Now, servers act more as hubs, and multiple groups of people can connect to them, go off into their own little room separate from the others, and go about their business. I'm now hosting such a hub at, port 8080. So just put `` in the "IP" field in settings, and you're all set! (new projects will default to this, instead of `localhost`). Of course, if you'd rather to use your own server and have the knowledge on how to do so, that is also completely allowed and encouraged (the server files are available on the github repo).

    So what does this mean for you? It means to connect to users all you need to do is say to the other players "Connect to my room: It's called 'VitaliDeservedBetter' and the password is 'Boooooooones' with eight o's" and then the other players will, after expressing their distaste at how inconvenient and excessive eight o's is, will just type those in and press connect, and that's it! Not a single person, including the host, needs to do anything but type in a room name and password.

    I also added some cool features like a "connected users" list, complete with fun randomly chosen nicknames (don't worry, you can edit your nick name in settings), and the ability to kick users and make all the puppets move off the stage.

    Here's the downloads for the new version:


  • @thepaperpilot this is amazing. Awesome changes! Thanks  :)
  • edited January 2018
    I've created a masterpiece :) (this is my wink emote)
  • @thepaperpilot Firstly, thanks for putting this program out there. My friends and I have been using it extensively and it's really helped a lot!

    I do have a question. I can't seem to get my own server working. Normally there would be a Host Server option, which I had no trouble with, but it's not there. I checked out the repo and saw the 'server' folder with 3 files in it, but am not sure what to do with it (if anything). Could you point me in the right direction? I know we can use, but I'd prefer to host it myself.

    Thanks in advance (:
  • @camomatt The server can no longer be started from inside the app, but is instead provided as a node program.

    To use it, you download that server folder and use the node package manager (npm) to install the dependencies (`npm install`) and start the server (`npm start`).
  • @thepaperpilot Took me a little while to figure it out, but I got it. Thanks for putting me in the right direction!
Sign In or Register to comment.