Retro YouTube Simulator: A Retrospective

Posted by
September 11th, 2016 12:50 pm

LD36 was our second Ludm Dare Jam attempt in which we created Retro YouTube Simulator. In this post we look into the creation of Retro YouTube Simulator, and the response it has received so far.

Play Retro YouTube Simulator

Continued below the cut.

The Concept

The idea for RYTS came from Commie’s and my shared love for the look and feel of tech in the late 80’s and early 90’s. There’s something tactile and satisfying about the technology of the day, where your favourite music or movies are real physical objects on your shelves. We chose to build an experience in Unity to demonstrate the limitations of this old technology, and decided that a VHS delivery system would be feasible in the time limit, and have enough room to get a little creative with the delivery of these videos.

Interestingly, we dismissed the possibility of playing YouTube videos quite early on; Unity simply can’t stream YouTube videos. Instead we decided to build a Her Story type game with a few intriguing yet cryptic videos that would lead the player to solve puzzles which would unlock the ability to request further videos, and further the mystery. The mood of this game would be sinister and mysterious, leading to the reveal of a larger conspiracy.

There are loads of public domain videos available from the good old days, and even in isolation they invoke charm and mystery. With some clever editing and a few inserted clues, you can create all kinds of messages and signals. The video above is a clue for the player to investigate the telephone, which would lead them to the next video cassette.

Change of Plan

Ultimately we reached the end of Sunday and it became evident that in order to complete the game we wanted to make it would take more than one day. The amount of 3d art and video editing required to make 8-10 videos and clues was too much for a single day. At this point we had a player controller with interaction, a video cassette playing system, a robust terminal and a few art assets. At this point Commie suggested we revisit the YouTube idea. So we did.

How we play YouTube videos in Unity

Instead of relying on Unity to stream the video and audio directly from YouTube, which isn’t supported, we opted instead to download the videos and store them locally. Then it is a simple matter of loading the video from disk and bringing it into Unity as  Movie Texture at run time. The only issue is that Unity only supports .ogg videos to be played at run time. The editor actually converts any video you pull into it to this format. So in order to play downloaded videos we also have to convert them.

This is ultimately why receiving a video in RTYS takes so long. In the background it is downloading your requested video and converting it to the correct format. The amount of time this process takes varies wildly depending on the length of the video, your download speed, and your processor speed. Downloading a 10hr Nyan Cat video is inadvisable.

In addition to these issues, the version of Unity we used was unable to load MovieTextures from disk (using WWW) without throwing errors. It’s a wonder the game ended up working at all, and indeed it wasn’t until a couple of hours before the deadline that the entire procedure of searching, requesting, receiving and playing a VHS tape actually worked.

Bugs

Bugs are inevitable when one rushes to complete something. RYTS is no exception and has a few notable bugs that have been found:

  • Performing a query while a video is downloading will change the data of the disk you are downloading. This means that your video will have a different name, based on your query.
  • Tapes disappear when moved around. The player can collide with the tapes, and occasionally they disappear through the floor.
  • Channels are displayed as videos, and can be requested. This will softlock the game, as no video url is associated with this request
  • Playlists are displayed as videos, and can be requested. This will cause the game to download all videos in that playlist, and create a video cassette with no information on it.
  • Black screen error – for some users are higher graphics settings the screen simply renders all black.
  • Audio Desync – the playback speed of the video and audio is often mismatched, and often delayed.

Reception

We published RYTS on itch.io, which has been fantastic. Itch.io provides in depth analytics and referrals, which really helps to understand how many players are actually playing your game. At the time of writing almost 1,000 people have downloaded our game!

We owe this to a number of YouTube videos and blog posts. GameJamCurator, Alpha Beta Gamer (here), and RockPaperShotgun(here) posted about the game, and it has been rehosted on dodgy free game sites from Russia and France. Itch.io was also fantastic for generating clicks, both the free and simulation pages generated a lot of traffic to our game.

Conclusion

What went wrong:

  • Indecision – changing gameplay half way through meant that some work went completely to waste.
  • Our original scope was a little too big for the time limit, and so we were forced to cut back.

What went right:

  • A good backup plan meant we could still complete something
  • Solid “hero” art
  • Delivered a complete experience
  • Nice mood and theme
  • itch.io is fantastic

In all RYTS was a success. Despite our late-in-the-day change of scope and a few bugs we are proud of what we’ve created and players seem to have enjoyed it, too. While it’s more of a toy/experience than a game, it still accomplishes most of what we set out to achieve, even without the story elements we had planned.

Since the Jam ended, we’ve been fixing up the game and intend to release a more featured version. We’d love to hear your comments and ideas!

Authors:

Pogo: https://twitter.com/PogoUK

Commie: https://twitter.com/crazyaivan

Play Retro YouTube Simulator

Tags: , ,


Leave a Reply

You must be logged in to post a comment.

[cache: storing page]