MrBond's picture

Extra Life 2017 postmortem

Hello everybody,

Our Extra Life 2017 24-hour marathon was a fantastic success!  We had a great time putting it on, and the response was overwhelmingly positive.  We finished up with a total of $1,095 in donations, well beyond our $500 team goal.  What a great result!

Considering this is the first streaming event any of us have organized, I am impressed and surprised by how well it went.  Everyone pulled together with their own strengths, and we all got to try things outside our typical roles.  A minor miracle happened based not on luck, but on hard work and good preparation.

As is true of any new endeavor, we could have done many things better, differently, or both.  This is my postmortem of our event.

Time lead-up

We planned the event in about two and a half weeks' time; this sounds like a lot, in the abstract, but when you're working around everybody's already-busy schedule (full time jobs, family, personal care, other hobbies), that time is short and valuable.  We really should have started planning and organizing more than double that time before.

That's not to say the tight timetable was all bad; in fact, we had a lot going for us - not the least of which was having most of the hardware already on hand and tested.  Also, the urgency moved us along quickly and didn't leave a lot of room to procrastinate or otherwise debate "good" versus "perfect" solutions.

You can bet any future events we plan will have more lead time.

Use of organizational tools

We use Slack and Trello to track most of our tasks.  This event required tracking so much more than one-offs and underscored the need to lean more heavily on these tools than we had prior.  I think we were all pretty good about recording tasks at the start, but as time wound down and new, unforeseen tasks cropped up, I was often the only one recording and moving them through our pipeline.

I get it - lots to do, and just writing stuff down and moving little representations of work around (rather than just doing the work) seems silly.  However, trying to remember what needs to be done, or what progress was recently made, or if things are already done, is too much of a cognitive load to deal with on top of everything else, and it is a problem easily avoided.  All told, I need to better stress the importance of these tools, and the importance of taking ownership of individual tasks and the entire process.

On top of that, this was an event where we pulled in some outside help.  Slack (with our team on the "free" plan) did not allow us to include outside people without extra workarounds and expense.  Luckily, we already had an available Discord server, and we used that to keep everyone (team member or no) up-to-date.  Even so, we should have been prepared for this from the start.


Despite not having any experience organizing events, all of us have experience attending them; and we also had ideas about some of the tools used to schedule for them.  We selected Horaro to manage the public-facing schedule, and this largely worked out - we could easily lay down our blocks of time, distribute a single link, and not have to worry about weird time zone conversions or sending out corrective updates.  This was a good choice.

Truly making the schedule, though...this task fell to me - and trying to do it with the typical responses of "it doesn't matter" and "I'm good with anything" was frustrating.  I'm glad we all had the flexibility to be good with whatever, but filling 24 hours of time with no hard restrictions, no suggestions, and no preferences of who wants to play what and when, is not easy.

If scheduling is my responsibility for future events, I will be more forceful about getting suggestions and firm commitments - I'm not cut out for dictating everything from scratch.

Community involvement and promotion

Game streaming, whether for charity or just in general, benefits from community involvement.  Our team is involved in many different communities, both speedrunning and casual.  All of us (particularly myself) are relatively small-time, so we're not particularly well-known, but that didn't stop many wonderful people from helping us out - with hosts, moderation, or just plain spreading the word.

Our ability to involve the community more than we did was hamstrung by lacking readily available public material on what we were doing.  Sure, "we're streaming for Extra Life" was easy to say (and true), but we had little early info available - like a firm game list, schedule, where-when-how details, etc.  After that information was ready, we did get good coverage, but we must be ready earlier.

Intro and outro

When it came time to start the event, nerves were running high - I don't think any of us are particularly "public" people, so introducing ourselves was tough, and we didn't have a solid script on hand to kick things off.  Still, we managed, and after some initial stumbling, things ran smoothly.

The wrap-up was even more difficult, as after 25 hours, we were more tired than when we started.  We managed to close out okay, but both the start and finish of the event are aspects that need a lot of work.

Length of the event

25 hours is a lot of time.  Prior to this event, my single longest stream was a little over eight hours, with no breaks or rest in between.  For this one, not many of us had solid rest beforehand, and we weren't able to get much rest during, either.  This was a mistake, but one that can be solved with more effective planning and grounded expectations on what each of us can do.

Don't get me wrong - I'm glad we did a long-running event like this; it proved a lot of things out and highlighted our ability to sustain energy over a long period of time.  And it also taught us to be more realistic about how long we can effectively present.

The above items were some of the "soft" aspects of the event - I don't particularly pride myself on handling them effectively, have little prior experience with them, and they are hard to measurably improve - but are easy to identify that they can be improved.  The next areas to examine are things that, as a team, I think we have well covered in skill, experience, and aptitude.

Stream layouts

Let's start with (in my opinion) the weakest aspect - our stream layouts.  We had to create six layouts in total that met varied mixes of these criteria:

  • Multiple screens (1 - 4)
  • Different aspects of screens (4:3 or 16:9)
  • A visible camera input
  • Information on multiple players (1 - 4)
  • Information on the game and / or run currently in progress
  • A dynamic list of upcoming games
  • A running total of donations received during the event
  • Logos and branding
  • Different sizes and placements of all the above, depending on available space
  • (Setup screen only) Recent donations
  • (Setup screen only) The current song being played in the background

In addition to all the above, the layouts had to be watchable - primarily, not ugly, and (if possible) visually striking.  No small feat to do, in a very short time, with not-typically-artistic skills available on short notice.
I think the stream layouts were visually adequate - insomuch as they were clear in what was being presented, but not particularly beautiful or eye-catching.  I can say this confidently, as the general arrangement, sizing, and positioning of all the elements, the theming and coloration, and so on, were my responsibility.  I'm not an artist, and though I'd like to make "prettier" things, I am concerned much more with making them work first, and then polishing them later.  All of this took multiple revisions and a lot of tuning to look minimally presentable.
We had to write some custom code to get data for the dynamic elements and to show them as desired; most everything worked after a little testing for edge cases and weird outcomes.

The "stinger" transition between layouts was neat - Extra Life provided the short visual flyby, and we integrated it through OBS in a few minutes.

Overall, the layouts worked quite well; they changed as expected, when expected, and were accurate throughout the event.  With more time and polishing, I daresay they could look "pretty" someday.
Changing games

Our dynamic layout elements included the current game being played, as well as the next few upcoming games.  Overall, this worked well - we had the data from Horaro, and simply needed to display and massage it into place.  On the backend, however, we were not quite as prepared.

The schedule on Horaro was nice, and reflected our intentions - we even stayed on schedule for nearly the entire time - but we wanted to account for the inevitable overrun or early start, so we couldn't just use it as absolute truth.  We needed some manual intervention in specifying the current game, then retrieving the next few games from there.  Our setup required manually changing a few files, as we didn't have a formal administrative interface to use.  This is one area that requires more work before our next event.

The actual setup process for changing games was well-defined - we had a checklist of about 13 items to follow and verify.  Said checklist was exhaustive, though burdensome, and we still missed some steps in between.  Many of these steps can and will be automated in the future.

Donation tracking

Tracking donations was a bit tricky based on our initial misunderstandings of how Extra Life reported them to us.  The data is freely available, though the total received was split out based on individuals, not by team as we had expected.  Short time bred a few ugly workarounds and hacks, and we fully expect further change and refinement depending on who is handling the donations; be it through Extra Life again, a more generalized donations platform like Tiltify, or any other in the future.  This is one area to be greatly improved for next time, now that we have a better understanding on what we can do.


Audio is far and away where we excelled.  The experience we have across the entire team, plus the hardware we had already acquired, proved invaluable.  We did some work before and during the event in testing audio levels across many people with different speaking tones and volumes; ultimately, it sounded great.  One thing I noticed while reviewing the recordings is that the setup screen music was way too loud - something we hadn't extensively tested as a last-minute (well, last-48-hour) addition.

This is one area where I don't think we have many changes to make - major props to our team for handling it so well!


Video quality throughout the event was mostly consistent; capture from consoles 2 through 4 sometimes varied in what resolution we expected to work with.  A couple sharper-eyed folks were kind enough to let us know about the variation.  Thankfully, everything was still visible and coherent, despite some fuzziness at times.

We commandeered an actual video camera, rather than relying on a standard webcam, and the quality turned out well.  We did not have a lot of space to let our faces shine through, but maybe that worked out for the best as the event progressed.  For future events, we'll get a handle on video quality consistency, and maybe do some clever rearrangement or lighting to make the camera view stand on its own.

Technical setup

As was likely evident, we had a monitoring station close by to keep an eye on the stream - quality, information, and chats, among other odds and ends.  We should put this out-of-view of the camera in the future, so things look a bit more professional as we set up between games.

Even with all the above considered, I cannot stress enough how utterly incredible it was to put on a great marathon.  Thanks to everyone - our team, our viewers, and our donors - for making this a fantastic event, and for encouraging us along the way.
That's all for now.