Profile cover photo
Profile photo
Never take your eyes off the game.
Never take your eyes off the game.


Post has attachment
What might be the last update for the time being:

Still no word on any APIs for overlays in Discord, or news on the video chat for Discord. Come this Friday, Dicestream for Hangouts will stop working due to Google shutting down the API that it uses.

When Google decides to change their minds about APIs (usually every 6 months or so) I'll see if it will integrate into Hangouts again. Otherwise, the current plan is to try and revive DiceStream as a plugin for Discord chat.

This app was written as a quick throwaway for one of +Quinn Murphy's Marvel Heroic games I was playing in and we were streaming, I thought it'd be nice for people watching to see what we rolled. It sort of spread through word of mouth.

I've been a horrible maintainer of the project (I didn't ask for this Adam Jensen meme.jpg) but despite that a lot of you have used this silly little app. If it Phoenixes somewhere else, I'll definitely announce it here on G+, as well as at

Thanks everyone, and good luck out there on all your rolls.
Add a comment...


With the AWS S3 problems today, Dicestream may not work. The die images are stored on S3. Consider this a preview for April, I guess...
Add a comment...

It was a good ride.

I just received the following e-mail:

At the Google Horizon event in September 2016, we previewed a new experience for Hangouts focused on meetings.

In order to streamline our efforts further, we will be retiring the Google+ Hangouts API that enables developers to build apps for the older version of Hangouts video calls. This API was originally intended to support social scenarios for consumer users as part of Google+, whereas Hangouts is now turning to focus on enterprise use cases.

Starting today, no new apps will be allowed, though existing apps will continue to work until April 25th, 2017. Users may continue to access existing apps through current entry points until that date.

We understand this will impact developers who have invested in our platform. We have carefully considered this change and believe that it allows us to give our users a more targeted Hangouts desktop video experience going forward.

We welcome your continued support.

Best regards,
The Hangouts team

So it looks like Dicestream on Google Hangouts has an end of life of April 25th, 2017.

I'm going to start shifting my efforts into a Discord app, or if possible a stand alone app. I'll keep you all informed of any new details.

-Mike Hasko, the guy behind DiceStream.
Add a comment...

Post has attachment
Pushed something new to the pbe version, mostly css changes to hopefully make things work on smaller screens some.

Also want to float something out there. I know that Google+ and Hangouts has a huge RPG community, probably some of the most active users of G+ are us gamers. Development for Google Hangout Apps is a pain in the butt, and I'm very afraid that the stop gaps we have in place to allow DiceStream to (sometimes) work might go away and leave DiceStream dead in the water.

I use Discord for a tonne of different gaming communities, and they recently gave a preview of features coming soon to 2017. ( One of them was video chat.

There's no news on an API for video chat in Discord yet, but as soon as I know, I'm probably going to try and implement DiceStream in Discord as well. The amount of API support they have provided for developers in the past has been amazing compared to the impending doom of Hangout App development seems like a breath of fresh air.

But I can only see the developer's view. Keeping the Hangouts version of DiceStream around, do you folks think a version of DiceStream running with Discord video chat would see any use?
Add a comment...

Post has attachment
I've given the site a fresh coat of paint, including a better 'Launch Dicestream button.

One thing to point out on the page is the Public Beta Environment. There's a link there to an in-progress version of Dicestream that I hope to flip the switch on soon. If you're having any issues with the current version of Dicestream, please try launching with the PBE version and see if that fixes the issues.
Add a comment...

Post has attachment
Early word has it that apps won't work, at all, in this new version of Hangouts.  Which includes Dicestream.

For now it seems apps will work if you use the shortcut to launch older version hangouts.

If you get early access, please let me know if there are any options for using Dicestream.  If I see or hear anything from the development side, I'll update here as well.
Add a comment...

Post has shared content
All D&D players may want to take a look at this overlay that runs on top of Dicestream.
Originally shared by ****
Check out my tutorial video on my custom overlay for Online D&D play over Google Hangouts using +DiceStream
Add a comment...

Domains are being a bit wonky right now.  Including the shortcut url to launch DS.

if you need to launch a Hangout with Dicestream, you can always use this direct link:

h/t to a John Fuller who messaged me this, but I can't respond back to in G+ or find him to respond directly to.
Add a comment...

Post has attachment
Here's a quick sneak peak at the new version of Dicestream.  

Now if you look at the current version of the app and the new one, there's very little.  The dice selectors are a lot less jagged, but other than that, things pretty much look the same.  Well, I'm missing the counter, but I'll get to that in a sec (it's not going away...)

The fact that they look so similar is actually the point.  The new Dicestream uses a whole new framework, +AngularJS that is really powerful.  I'm able to replicate most of the existing functionality in a lot less code.

But Angular makes it a lot easier to fix the backing dice data structures. (Going a bit geeky here for a sec, I'll recap it once the geek talk passes).  The current version of Dicestream uses an array of the number of sides of valid dice:


 Everything dice related is driven off of this simple array.  I cycle through that to create the interface that you use to select the dice.  When you 'roll' dice, I get the position of the die in the DIESIDE array and use that as the max value of the die to be rolled.

It worked, but had a lot of limitations.  I couldn't have 2 different types of d6s, because everything d6 randomizing had to go through the same DIESIDE[2] call (Non-coder people trying to get along, this means get the 3rd value in the DIESIDE array.  Arrays are 0-indexed, meaing we count 0, 1, 2, instead of 1, 2, 3)

Now, the new Dicestream has a json back end, and is able to define a lot of variability.  The structure looks something like this:

          side: 6,
          count: 1,
          color: #0099FF,
          explode: true},
          side: 6,
          count: 2,
          color: #FF90cc,
          explode: false},
          side: 20,
          count: 1,
          color: #9f9f9f,
          imgRoot: path/to/image/dir
          explode: false}

Each of the die types has an id, and a bunch of different parameters I can set.  So if your weird Killer Bunny prototype RPG needs 8 different pools of 4d12, it will be possible for Dicestream (And hopefully an interface for everyday users) to allow those different type of dice, even if they share the same side.

TL;DR - Everything looks the same but using vastly different internal processes that should be very flexible going forward.

Geek talk over.

The counter's currently not there but I'm looking to improve on to be a bit more robust as well.  I want to allow end users to define the number of counters and give you all the options to alter the counters/pools of others.  Think of it as the Dicestream version of sliding a bead from my pool of beads to your pool.  (The end test case is to be able to play Golden Sky Stories or Fiasco via Dicestream. If you've never played either, grab the books and run the game with your group)

I still have a bunch of classic features left to implement (text, lower 3rd, bunch of debugging) before adding this new stuff and a bunch of other things I'd like to get into DS 2.0 (Star Wars dice, summing dice, etc)  But wanted to keep yinz guys in the loop and sort of toot my own horn for this mini milestone.

As always, if you have questions or comments let me know.  

-Mike Hasko, the warped brain behind Dicestream
2 Photos - View album
Add a comment...


So, yeah, it's been a while.  A lot of you have noticed I've been rather silent these last, oh, 8 months or so.  Dicestream was, I thought, in a good enough state.  I moved on to working on other projects, really only poking in here to restart something if it broke or making small text fixes.

I ignored a bunch of comments and criticisms, feeling that DS was in maintenance.  "I can't really add EotE dice, the backing data structure won't allow it."  "I can't do dice modifiers, no good way to add them."

First, I'm sorry for that, behind the yellow dot with a d6 and d4 I'm only human. 

Second, the above is true.  Dicestream was thrown together in a week's time between sessions of a Marvel Heoric game.   I've added a bunch of stuff the community has asked for on top of that, even did a refactoring of the code at some point, but that was just breaking up one large file into multiple ones.

Right now in my test set up I have Dicestream working on a totally new back end data structure.  If you want some more techy details I can provide them, but the TL;DR is that I'm now able to define each type of die a lot better.  

If I want to have a d6 that is red and a d6 that is blue and explodes, I can now do that.

If I want to have standard d8s and the unique EotE d8s, I can use all of them as well.

I guess we can call this Dicestream 2.0.  More flexible dice definitions.  Swappable dice images.  Not working yet but on the list, less pixelated text blocks (With a background color to help make them more readable).  Option to add modifiers to dice rolls.  All of it rewritten in AngularJS, which removes tonnes and tonnes of jQuery DOM hackery.

It's still a month or so away, I only get a few hours a day, at most, to work on it.  But I owe it to you guys to atone for the coding sins of the past.  I mentioned earlier this was only supposed to be a tool used for one game.  I never expected people to actually use this tool outside our grop; it blows my mind that some silly app I cobbled together is used by so many people.  For that I thank you all, even those of you who bet on me updating Dicestream sometime next century.  :)
Add a comment...
Wait while more posts are being loaded