I'm always surprised when a team from a cold climate fares well in baseball against teams from California, Texas, Florida (or other southern states), (parts of) Nevada, Arizona, etc.
I know cities that have indoor baseball leagues, but they're expensive as fork and so much of getting good at baseball is being able to play in the street with friends.
The dad of one of my son's friends played in college and either a rookie or independent league and he has a batting cage in his basement. They don't use real baseballs, but it's some kind of rubber ball that is the same size and weight of a baseball. I'd never seen anything like it. Naturally, his kid is one of the best in the area, but how many people have the means and the time to do something like that?