The thing that works for baseball is how slow the game is. There's plenty of time in between pitches to make the animation simple. With sports with constant movement like a WC match would require a lot more resources. Might as well be a game engine at that point.
Watching one of these live just brings home exactly how low activity a baseball match is. You can easily miss a pitch if you're not actively watching it and keep your attention span on it. It also brings to mind how much the commentary during a game keeps the viewer engaged. Live video and a good director cutting to different cameras also helps. Radio with out the color would be insanely boring:
Here's the pitch, low and outside.Ball 1.
30 secs of silence.
Here's the pitch, fast ball down the middle. Swing and a miss. Count is now 1-1.
For sure. And agree it wouldn't work as well for active sports like soccer or basketball.
Have some ideas on how to make this a bit more engaging for baseball, still. But ultimately it isn't really made for active viewing or to replace a live broadcast. I think of this more for the fan who wants to keep it on in the background or on the TV while they work or multitask.
Football MIGHT be slow enough that you could animate the plays Techmo Bowl style.
It would certainly be fun to attempt it. You might have to mix in some pre-defined animations for "run up the middle", that could do minimal updates like Jersey numbers.
I don’t watch baseball (maybe a couple games a year), but I think it could use some sound / audio, so you can have it running while doing something else.
IDK if there’s an easy way for the average person to get a live audio broadcast feed from games, so maybe your target market would be listening to that instead.
I’m thinking it could use some sound effects, for balls, strikes, hits, etc. I only tuned in for a couple pitches and then it was between innings, so maybe the more significant events already have something, and I just wasn’t patient enough to experience them.
I was looking away when the last out of the inning happened (or maybe changing views?). Is there a display of what caused the out, and maybe an animation of the fielders coming into the dugout, or does it flash up the “between innings” screen pretty quickly?
It might be nice to have a significant event summary available somewhere. It feels hard to believe that this would catch someone’s attention well enough that they’re watching the whole thing, and without audio cues / replays, I know I wouldn’t be interested in watching it for any length of time.
Couldn't find a live audio broadcast to embed, but that would be ideal. Will add some sound effects soon, and also like the idea for key plays/events recap in case you miss anything.
I'd love to see you grab the sound effects from something like the Super Batter Up for SNES. Somehow I think Bandai Namco is not monitoring the Internet for those samples -- at the very least MLB will be coming to ruin things before that happens anyway.
I can still hear those sound samples in my head, they have voice samples for:
Play ball! Foul. Strike. Y'rOUT! Out. Safe! Home run!
Oh, and the ending bars of the US and Canadian national anthems. Which you could totally play just before the "Play Ball!" :)
Amazing, and I love every pixel of it. We know the MLB is famously understanding with creative repurposing of their data, so I wonder what live data you are using and if the rationale for use is something like small scale hobby/fair use?
I know when it comes to historical data, projects like the Sean Lahman Database have to go through quite a bit of trouble to reproduce "clean room" versions of historical data that are legally fine to use. I have to imagine there's a lot of complications when it comes to live data for anything that even has a hint of being more than a hobby project.
Love the look of this! Enjoyed watching a bit, will definitely have it on later.
One comment is, during “in between innings” when it was showing around the league and other stats, the text was really small on my phone. If possible I’d rather have it scrolling or switching between pages of data than trying to fit it on one screen. I get that on a tv or pc it’s probably the right size, so not sure if you’d want to spend the effort to have a separate view for small screens.
I'm not a sports person and other then going to a superbowl party really don't watch anything but this is really cool. I even put a game on the tv and was comparing it to the site. Very well done :) If there was some way to have live audio streaming in to hear what was going on while the screen animated it that'd make this perfect but I imagine that isn't really a thing that can be done.
This is brilliant. Can you make a sub-game, Streets of Rage II beat em up that you can play when the benches clear in a real game? Perhaps have Mortal Kombat finishing moves when the managers are fighting the umpires?
Awesome! Sometimes a thing conveys it was built with some love or intention. It's not restricted to fun/entertaining content, it can be Saas too. I'm talking more from how it looks and feels than necessarily what's going on in the backend, but I'm not really talking about graphics.
Something about the way baseball itself is played seems to make recreations really satisfying -- like, more accurate? -- and fun compared to say, soccer hilights of matches on Youtube made with what looks like an EA soccer video game
I also really like the idea of recreating any type of event in this format. It's almost like photogrammetry but with as much creative intention as you have documentary. very awesome, very inspirational really
Thanks!! Agree baseball is a great match for this and just happens to have the data available, too. Have been thinking about what other formats this could lend itself to. Golf and tennis would be great fits, but data access seems limited/controlled.
For now, still a lot of work to be done for baseball. I'd love to get full in-field animation completed at a higher quality (think those 8-bit baseball iPhone games), and more details to give life to the stadiums and atmosphere.
Love this idea. Golf and Tennis, too. I think the main challenge for other sports would be less access to near-realtime game data down to the ball and player position, etc.
I'm not sure if this is just me but the mismatch in pixel sizes and inconsistent palette is very jarring. This would be more impressive if this actually matched the 8-bit aesthetic of like the NES.
Yeah, the game "Baseball" on the NES is a good example. I get though that an 8-bit aesthetic would be very tricky to get things like the player portrait details looking right. Cool project by the way!
This is a classic problem for people who didn't grow up making 8-bit pixel art. Typing "pixel art" into Nano-Banana only creates the illusion of pixel art, which quickly breaks down under modest scrutiny, particularly at larger resolutions.
That's why you can see "smeared edges," "fringing," etc.
Even a basic nearest neighbor downscale/upscale would have squashed some of the higher frequency noise.
OP: Look into palette reduction and pixel grids. This is a decent start as a post-processing tool for this stuff.
yes. i am more perceptive of bad art vs bad code. seeing so much bad generated art...everywhere...makes me wonder how much bad code is being put out there. art isn't load-bearing, but code can be.
1000%. That’s why I encourage wherever possible a strong emphasis on TDD (test-driven development) when using LLMs for agentic design. It’s not perfect, but it’s better than nothing.
Yeah because it is AI pixel art :/ But something also seems off with the AA right now. Going to try to fix. Then, maybe sponsor some artist-made sprites later if there's interest in the project.
Incredible work! Do you have any plans to add sound effects synced to in-game events, or maybe even TTS-generated commentary? That could make the experience feel even more dynamic and immersive.
I am a big fan of the ESPN CDN data api and have made a few "scoreboards" of my own. Recently I polished a simple html one at: https://mlb.ope.cool/
But I will most definitely be reaching for yours and tossing it up on the TV's in the office, this is so cool
Notably you could quickly prototype something for the world cup using sport `soccer` and league `fifa.world`. Its awesome
I wonder if some kind of filter would work or we would need some data source. Looks much harder given the fast-paced nature of the game.
Watching one of these live just brings home exactly how low activity a baseball match is. You can easily miss a pitch if you're not actively watching it and keep your attention span on it. It also brings to mind how much the commentary during a game keeps the viewer engaged. Live video and a good director cutting to different cameras also helps. Radio with out the color would be insanely boring:
Here's the pitch, low and outside.Ball 1.
30 secs of silence.
Here's the pitch, fast ball down the middle. Swing and a miss. Count is now 1-1.
30 secs of silence.
Have some ideas on how to make this a bit more engaging for baseball, still. But ultimately it isn't really made for active viewing or to replace a live broadcast. I think of this more for the fan who wants to keep it on in the background or on the TV while they work or multitask.
It would certainly be fun to attempt it. You might have to mix in some pre-defined animations for "run up the middle", that could do minimal updates like Jersey numbers.
IDK if there’s an easy way for the average person to get a live audio broadcast feed from games, so maybe your target market would be listening to that instead.
I’m thinking it could use some sound effects, for balls, strikes, hits, etc. I only tuned in for a couple pitches and then it was between innings, so maybe the more significant events already have something, and I just wasn’t patient enough to experience them.
I was looking away when the last out of the inning happened (or maybe changing views?). Is there a display of what caused the out, and maybe an animation of the fielders coming into the dugout, or does it flash up the “between innings” screen pretty quickly?
It might be nice to have a significant event summary available somewhere. It feels hard to believe that this would catch someone’s attention well enough that they’re watching the whole thing, and without audio cues / replays, I know I wouldn’t be interested in watching it for any length of time.
I can still hear those sound samples in my head, they have voice samples for: Play ball! Foul. Strike. Y'rOUT! Out. Safe! Home run!
Oh, and the ending bars of the US and Canadian national anthems. Which you could totally play just before the "Play Ball!" :)
I know when it comes to historical data, projects like the Sean Lahman Database have to go through quite a bit of trouble to reproduce "clean room" versions of historical data that are legally fine to use. I have to imagine there's a lot of complications when it comes to live data for anything that even has a hint of being more than a hobby project.
One comment is, during “in between innings” when it was showing around the league and other stats, the text was really small on my phone. If possible I’d rather have it scrolling or switching between pages of data than trying to fit it on one screen. I get that on a tv or pc it’s probably the right size, so not sure if you’d want to spend the effort to have a separate view for small screens.
Either way though, great job on this!
Something about the way baseball itself is played seems to make recreations really satisfying -- like, more accurate? -- and fun compared to say, soccer hilights of matches on Youtube made with what looks like an EA soccer video game
I also really like the idea of recreating any type of event in this format. It's almost like photogrammetry but with as much creative intention as you have documentary. very awesome, very inspirational really
For now, still a lot of work to be done for baseball. I'd love to get full in-field animation completed at a higher quality (think those 8-bit baseball iPhone games), and more details to give life to the stadiums and atmosphere.
edit- First 2 plays I watched are back to back homers. Go Royals!
This is clearly 16 bit.
That's why you can see "smeared edges," "fringing," etc.
Even a basic nearest neighbor downscale/upscale would have squashed some of the higher frequency noise.
OP: Look into palette reduction and pixel grids. This is a decent start as a post-processing tool for this stuff.
https://github.com/jenissimo/unfake.js
do the mlb streams flag a challenge?