Show HN: multi-perspective StarCraft 2 web replays
ggreplayz.com
ggreplayz.com
Basically you upload your .SC2Replay files and I'll convert them into web replays. My twist is I make recordings from 2 players perspectives and show em both to you on the same page (sync'd of course). I have some other options as well, but I'm really looking for feedback on what things people do not like and what things you think would be cool.
From a bootstrap/startup perspective, my goal for this was to produce something that would scale decently with almost no $ investment. Have this running on 1 ec2 micro, static pages and assets (js,css,img) being served up by github pages. Dynamic pages are being served directly from memcached via nginx module (pages are stored already gzipped). If anyone is interested in the implementation details I'd be willing to share cuz I think some of the techniques I used could help others looking to bootstrap their own webapp.
I also have a mobile version so you can watch em on your phone. http://m.ggreplayz.com
* Side by side might be better than one over the other. Most monitors are wider than they are tall.
* I miss the sounds. I would keep the audio from both replays, but of course turn off music.
* When creating the videos I'd give the player on the left a slight pan-left for the audio and the opposite for the player on the right.
* Show the production tab dood!
Cant do sounds cuz its from 2 diff persons perspectives. Also, I dont like the sounds :) I get better framerate w/ em off too.
will do on the production tab
http://www.teamliquid.net/forum/viewmessage.php?topic_id=356...
I've always been fascinated by how many clever hacks come out of the SC community for adding features/functionality like this. A lot of the SC2 observer mode features were a product of hackers making plugins and utilities that enhanced the replay experience for Broodwar, so it's fun to think about what sorts of nice things will be made by such hackers going forward for SC2 :).
I haven't had time to improve it much since then. My plan is to post it here (and get a perspective from a diff audience, tech saavy but not my target). Once I iron out some more things, I'll post on reddit.
http://www.reddit.com/r/starcraft/comments/x9uej/automatical...
I'll start replying to those reddit threads, thanks for doing this.
1- Ditch youtube
2- Start transcoding both into one video instead of two like it is now, so when I seek I have both timed up correctly
3- Use your own video player (goes with #1)
4- Modify homepage to be more "imgur" like- Move the browse button off of the "get started" page to the homepage.
5- Get a video ad network in place (many to choose from- integration takes about a hour) and start profiting from embeds
I know the argument on using youtube. Its easy, its free, they have a ad program you get a cut of. Its still worth it to roll your own if you get this to take off- You want to be "the easiest way to share your replay"
I made it flexable however, that if it takes off I can switch to a diff vid streaming provider.
Good call on #4, will do.
Seems the above can be achieved via YouTube's JS Player API: https://developers.google.com/youtube/js_api_reference
Display ads (google ads, for instance) average about .05 cents per view ( ie- you need 1k views to get 50 cents )
A server that comes with 100TB of bandwidth is about 200 bucks a month.
Now, is it going to be profitable? That all depends on the quality settings of the video + length + bitrate, etc..
As to whether advertising can cover streaming costs - yes it can, certainly when it comes to gaming content.
First off, keep in mind im going towards a pretty small niche here - people that will actually spend time on my app are power users. Gamers who are into tech, and want options.
There are alot of video options, but given my resources this was the optimal solution IMO - and not being modest, I think its a pretty novel solution.
The "huge" sidebar was my solution to not much real estate to put quality vids, while still giving flexability to break down a replay. I could hide the controls, but it does take away a bit of flex (if u want to rewind one player for example). My target audience is people who are good with computers.
I do like the single stream idea however, I can work on that in the future.
After playing with the site a while, I noticed the sidebar and it all fits now. I think the initial problem is that nobody's done multiple POVs before, so once people get the hang of it they'll want more.
+1 to the single multiplexed stream (at least to start with).
+1 to annotations tagged to specific seek times (if needed).
1. Individuals who want to share replays with friends.
2. Professional teams who want a scalable way of taking video of their players' games and hosting them on their sites.
3. Tournaments that want to host all their games in video format (don't want to distribute replays) but have scalability problems in doing so. They may be tentative about uploading such replays to your site, so a more formal partnership might work better.
4. Individuals who want to "watch replays" on mobile platforms.
5. Individuals who want to "watch replays" on machines that can't handle sc2 (or people who don't own a copy of SC2).
The need for replay watching is somewhat diminished compared to the days of Broodwar, when there was a dearth of videos of games available (nowadays, youtube videos of games are just everywhere). Where you might find success, is with groups who are really keen on watching replays of games that are one of those one in a million kind of games that weren't broadcast for a tournament. (I remember there was one such game -- Sea vs Savior -- during Blizzcon 2008 that was only played backstage and was basically never shown to the public)
I'm just an SCBW oldtimer.
For #2, I really think this would be niche profitable but would require the most polish and time because pro teams would probably want to jointly visualize responses to specific timings and save their annotations as a type of historical team-lore, but it would have to be a tight and stable.
For #3, (larger?) tournaments often have 2 game casters and it would be interesting to see different observations while still listening to a unified audio stream. What annoyed me the most when watching VODs or Twitch.tv casted replays is when the casters completely miss covering a multi-prong attack even though I can see something happening in the mini-map (e.g. all-in distraction + main/expo/expo drops).
Some casters are good and rewind to look at the action from a different POV, but it's still annoying and gets in the way of a smooth casting flow.
As a tangent, I wouldn't mind (far into the future) the ability to watch a web replay synced to a (pre-recorded) caster of my choice and play with the observer controls and POV while listening. In essence, that would require re-creating the realtime replay UI which is probably not feasible (but a former SCBW addict can dream).
For #4, killer feature. Ads ads ads, or strike 'service streaming' deals with mobile carriers so people can subscribe to your streaming channel and pay $1/mo for the privilege of watching SC2 replays on their mobiles.
For #5, there's some competition here like Twitch.tv, livestreaming, YouTube or VOD players, but ultimately you're right -- if people can watch synchronized web replays from multiple POVs and mob comment it should be enough to get decent attention. None of the other options allow for web interaction -- they're all modeled on TV audiences and distribution (i.e. faceless, delayed-alternative-channel-interactions). The closest is live-streaming where you can comment in the chat room while the player is playing the game, but: A) there's usually no record of your conversation to ROFL/analyze later; B) as the viewer, you have little say in which replay or game you want to watch next.
People try to model what the game does but without actually reimplementing all of SC2 perfectly, you'll still have bugs.
I think, on the other hand, if you had a video taken with the production tab open, and did some really simple image processing to determine what is being built at any given time, you could do a lot better than everyone else.
(I've been kicking this idea around for a while but never got past playing around with a single .PNG, and it looks like you have all the hard .sc2replay -> video stuff worked out already!)
If anyone is unfamiliar with reading process memory in Windows and wants to do this, I have a fairly simple example reading from SC2 at https://github.com/gibybo/S2GS-Extractor
Something like http://code.google.com/p/phpsc2replay/ will get the actions out of the replay, but I'm not sure how far along that particular library is when it comes to turning the actions into the list of stuff that was actually built (while discarding pointless spamming of hotkeys)
Not to be a negative Nancy but I think that pro teams won't find it useful in analyzing games simple because a video deprives you of control. You can't switch tabs, can't go to an arbitrary place on the map and can't increase the game speed. All you can do is watch the game from multiple perspectives, something you can almost do inside the game (press 1, watch for 5 seconds, press 2 and you get the picture).
Amateur players might find it useful when sharing their replays with friends, but how can that be monetized? A lot of gamers are reluctant to pay for premium content like GSL/MLG, I doubt they would want to pay for sharing video-replays with their friends.
Anyway, it's always cool to see things like this, things with a bit of magic :) Good job!
I think my idea appeals to: * moderate to very active player. People who want to a) analyze their gameplay (like nfl/nhl/nba/* teams watching film) b) show others something cool/bad that happened * tournaments and tourney players. There are tons of avenues here and potential. Not gonna go into it here. * pros. I think to really appeal to them I need some more features. I have some good ones in mind that I think would be useful. Hopefully I get some traction on this POC so I can implement em.
I personally fell into the 1st cat - I wanted a way to watch replays w/o having game installed. I wanted to watch it from anywhere AND see exactly what the opp. was doing at the same time as me. I don't like doing the player-to-player comparison w/in the SC2 replay tool.
I think this also opens the game to a user base who may not otherwise be exposed to the game (the real game, not just trailer or clips). AKA people who kinda know what SC2 is, and are gamers. This 0 barrier to entry exposes potential new customers of the game.
That functionality certainly would be useful, if only to see tourney broadcasters pick up on it and start using it.
I'm not sure if it supports replays, or how much effort that would be to add, but if it can, you could extract huge amounts of metadata like build timings/orderings and whatnot.
[Edit: and of course, if you can render to a virtual screen, maybe there could be some way to run headless or multi-instance on a single box]
If you can get the suitable video player controls, it'd be fun to integrate it with an interactive timeline something like SMILE[2] to show significant events throughout the game (first discovery, first unit death, 'interesting' (say, involving more than X units or Y diversity of units)
That SMILE is effing sick. I'm def gonna work on integrating that...WOW