Fish vs. Fish in Street Fighter II(twitch.tv)
twitch.tv
Fish vs. Fish in Street Fighter II
http://www.twitch.tv/fishplaystreetfighter
29 comments
What I'd really want to see is two monkeys playing the game against each other for the treat. If given some time, I believe that they can get better than most humans.
I had a dream one time when I was a kid that I trained a puppy to play Street Fighter 2. I'd never imagine it would ever be linked to anything this close to reality.
If one of the fish managed to make an Hadoken it should get a job at Konami (or at least a nice place on an "Konami"-Desk)
Would be interesting to observe if there may happen to be some pattern in fish movements as more data is collected over time.
what about the parody of http://twitch.tv/garlicplays
Just gotta say this is a strange outcome of our technological developments.. I mean think of the energy that was spent making this work - it could've been done doing something.. I dunno fucking useful?!
It's almost as bad as watching two "grown-ups" play Street Fighter lol.
It's almost as bad as watching two "grown-ups" play Street Fighter lol.
this exercise is useful.
1) the creators had a chance to learn/practice their favorite libraries and languages -- computer vision is hugely useful and applicable to nearly all domains.
2) the creators got spectators to think about the technologies involved, possibly motivating some to learn about them, and undoubtedly teaching a few people about things they didn't know the concepts behind. (computer vision. hell, check the comments on HN, a few of us didn't know how it worked and were thus elucidated.)
1) the creators had a chance to learn/practice their favorite libraries and languages -- computer vision is hugely useful and applicable to nearly all domains.
2) the creators got spectators to think about the technologies involved, possibly motivating some to learn about them, and undoubtedly teaching a few people about things they didn't know the concepts behind. (computer vision. hell, check the comments on HN, a few of us didn't know how it worked and were thus elucidated.)
What have you done to benefit the world?
Url changed from http://techcrunch.com/2014/08/20/7000-people-are-watching-tw..., which points to http://www.theverge.com/2014/8/20/6048973/fish-vs-fish-stree..., which points to this.
Background: This is the logical conclusion of Fish Plays Pokemon (http://motherboard.vice.com/read/an-exclusive-interview-with...), which was a hackathon project and a play on Twitch Plays Pokemon.
I believe this is actually the logical conclusion of the Internet.
There is no chance of that. The internet never ceases to amaze...
Nah, that would involve cats playing video games.
I am not sure if cats are a good idea for this. But what about rats? Could we teach them to do image recognition? Perhaps it could answer questions like "is there a cat in this picture?". Since rats are quite small this approach could scale well.
The rat rack.
Can the fish see the game? What if the fish were rewarded for winning? Can we train fish to play street fighter? How about rats?
What I think would be more interesting would be a way for viewers to stimulate the fish.
Say you have a link that charges the viewer a small fee to feed the fish on a certain side of the tank. Scale the price with how much food the fish has been given (all the way down to $0.00 and up exponentially to not overfeed the fish). Basically, let the internet handle feeding your fish.
So they can watch it play street fighter.
And you make money off of it.
Say you have a link that charges the viewer a small fee to feed the fish on a certain side of the tank. Scale the price with how much food the fish has been given (all the way down to $0.00 and up exponentially to not overfeed the fish). Basically, let the internet handle feeding your fish.
So they can watch it play street fighter.
And you make money off of it.
I don't think this is a possibility. While you could get some sort of feedback loop going (fish gets hit it gets shocked, fish hits it gets food or something), there would be no way for the fish to understand the massive amount of information they'd need to grok from the game, so they'd just be getting all this random stimuli with nothing to attach it to.
I can't see anyway to bridge the gap of making the fish understand the stimuli in relation to what's going on in the game. I would imagine the same is true for rats.
I can't see anyway to bridge the gap of making the fish understand the stimuli in relation to what's going on in the game. I would imagine the same is true for rats.
The fish doesn't need to grok the entire game, it just has to be better than the other fish. (Cue that joke about two people being chased by a bear and one pausing to put on his sneakers. "What are you doing? You can't outrun a bear!" "I don't have to, I just have to outrun you!")
For example, if fish A realizes that swimming around corner X gets it food, because X happens to correspond to "move forward and punch", that's enough to win the game if fish B doesn't figure out the same.
For example, if fish A realizes that swimming around corner X gets it food, because X happens to correspond to "move forward and punch", that's enough to win the game if fish B doesn't figure out the same.
> Can we train fish to play street fighter?
Certainly. The question is how well it would play.
Certainly. The question is how well it would play.
We could use crows or pigeons. Smarter, and already well studied. Or rats.
I was just speculating to my coworker about tying breeding to winning...
Well given that its Street Fighter my best strategy was to always just mash random buttons.
I do wonder if he choose the fish at random or tried to find more active fishies.
I do wonder if he choose the fish at random or tried to find more active fishies.
I wonder now if one could train chimpanzees to play the game successfully.
I'm sure if you get an infinite amount of monkeys, they'd perform a Hadouken eventually.
what's missing from "fish plays game" is some sort of reward for the fish. I wonder how clever they can get.
And as a finishing touch, man made 2 fish fight eachother on Street Fighter and streamed it to the world in real time.
God I love the internet :D
God I love the internet :D
I don't get it, can someone please tell what is going on?
The position of two fish in a tank are tracked. The tank is divided into a grid and the position of the fish in the grid determines the input into the game.
ooh cool :P
Thanks :)
Thanks :)
The description is further down the page. The top-middle sector of the tank activates the jump button for example. If both fish are in that sector, then the two characters will do nothing but jump on the spot until either fish moves elsewhere.
I watched the video and couldn't figure out what was going on :D
Thanks :)
Thanks :)
Soooooo much more engaging than the Fish Plays Pokemon the creator links to. I explained it to a coworker (...in marketing) and couldn't help but giggle at every other sentence in my explanation. "So the fish swim around in that virtual grid, see, and that triggers button presses in the fighting game." Sweet action, as the kids say.
Haha this is awesome! First a couple of HackNY fellows make Fish Plays Pokemon, now this! I can't wait for what fish related fun comes next.
Fish playing 2048 would be my guess
Fish playing Flappy 2048 - https://news.ycombinator.com/item?id=7431047
A lot of engineering effort to watch Balrog jab and Blanka duck forever.
Fish are bad at playing Street Fighter II. I already intuitively knew this.
Fish are bad at playing Street Fighter II. I already intuitively knew this.
I thought I was going to see Phil Fish fight himself, somehow.
That already exists, it's called Indie Game: The Movie.
Or one Phil Fish fighting another (Abe Vigoda's Barney Miller character). Now that'd be hilarious.
He needs to randomize the 1P/2P assignment because Aquarius seems to prefer being on the right side of the tank and gets an unfair advantage as 1P.
Maybe Aquarius prefers the right side because Aquarius likes to win.
If I could upvote you 10 times for the most ridiculously useless (but cool) thing I've seen on HN, I would. You win HN for today sir.
Hypnotic. Aquarius can't seem to lose.
He is a winning machine. His gold color suits him well. Aquarius is an impeccable fighter.
The last ~10 or so matches I've seen show Aquarius winning, often by a tiny margin. These fish might be more skilled than some real players.
They should make it so that you can play vs. a fish now.
EDIT: I spoke too soon, the Bruce is making a comeback.
They should make it so that you can play vs. a fish now.
EDIT: I spoke too soon, the Bruce is making a comeback.
Twitch plays Street Fighter against fish!
This is the answer to life, the univers and everything!
These fishes are more entertaining than the Pokemon game which was played through the chat room.
I was actually hoping for a writeup on the differences between regular fish and fish in SFII, but this is also good.
Next we need kittens versus fish. Kittens are much more active.
Next we need kittens versus fish. Kittens are much more active.
Anyone know if these guys making these games are using some kind of library for the image processing or what? Seems pretty complicated to do
I can confirm that FishPlaysPokemon uses OpenCV. There's a wealth of knowledge and tutorials, so if you just want to isolate certain color ranges (what they're doing), I guarantee there are tons of resources. There's also Python bindings to make things even more friendly. After that, it's some simple math to figure out which quadrant it's in and then trigger the correct button press.
Hm, good call, thanks for that. Looks like there's a binding for Nodejs out there too: https://github.com/peterbraden/node-opencv
Actually they just have to detect more than $x pixels of $color in each region then do a button press on that. I don't think in the abstract that it's all that complex, given that the fish are of starkly different colors that do not occur in the tank or elsewhere in the video feed.
maybe opencv ?
Stream seems to be down, here's what was on: https://www.youtube.com/watch?v=NHrRksz-XLI
If you like to watch computer-controlled 2d fighting characters with actual decent AI (most of the time) squaring off against each other, check out http://www.saltybet.com/ .
There are over 5000 characters in the database, and it runs 24 hours a day. The matches can get really amusing sometimes.
There are over 5000 characters in the database, and it runs 24 hours a day. The matches can get really amusing sometimes.
It really is amazing, I still wonder how Salty made it.
Also some protips to those who are interested:
1) Always bet DBZ
2) Never trust chat
3) Never bet DBZ
Also some protips to those who are interested:
1) Always bet DBZ
2) Never trust chat
3) Never bet DBZ
From a technical standpoint it doesn't seem too hard to set everything up (over time), but the concept and then the monetization of it is pretty ingenious.
I've seen Salty himself in the chat every now and then. I wonder how much time he spends working on the site vs how much he makes off of it every month.
I've seen Salty himself in the chat every now and then. I wonder how much time he spends working on the site vs how much he makes off of it every month.
Even better are the automated betting apps - betting on the automated gaming matchups.
http://www.giantbomb.com/forums/general-discussion-30/automa...
http://www.giantbomb.com/forums/general-discussion-30/automa...
Somebody should setup a Bitcoin based side-betting operation for Saltybet...I'm guessing people would actually bet.
Humans are pattern recognition animals, we like to look at anything random and extract meaningful patterns from it.
I see this game as a clear example of that, where (random) fish movement is fed to a computer game and translated into game play (pattern). I fail though to conclude anything particularly interesting if one fish won the game :)
I see this game as a clear example of that, where (random) fish movement is fed to a computer game and translated into game play (pattern). I fail though to conclude anything particularly interesting if one fish won the game :)
This is best thing I've seen all year.