# Hoarse > Hoarse is a free browser basketball game you coach with your voice. Shout a play like "kick it to four" or "two, let it fly" and your five players run it on court. It runs in Chrome or Edge and needs a microphone, though you can also type calls. - Play: https://hoarse.jeffand.co/ - Price: free, no account, no install - Made by Jeff Anders (https://jeffand.co) ## How it plays You coach the home team for a short game against a computer team. Both teams get new jersey colors each time the page loads, and the two never wear colors that look alike. There are no buttons for plays. You talk, and the players react. Crisp calls like "four corner" or "press" are understood in the browser right away. Looser phrasing, slang and run-on sentences go to Google's Gemma 4 on Cloudflare Workers AI, which works out the player, the action, the spot and how hard to do it. Every game drafts both teams from a pool of 450 made-up players. Each has a name, a position that's also his jersey number, a height, a weight, a skin tone, a hometown, a college and five 1 to 5 ratings (speed, shooting, passing, defense, rebounding) that shape how he plays. Players with a 5 get a nickname. Tap any name in the info panel, yours or theirs, for a trading card with his portrait, bio, ratings and line for the game, which pauses play while it's open. Each game opens with the starting lineups. The house lights go down, the visitors are set down on center court like game pieces in one quick run, then your five come out one at a time under a spotlight, each with a nameplate showing his first name, nickname, last name, position, height and college. The lights come up for the jump ball, which goes up inside ten seconds of pressing Start Game. Tap or press any key to skip straight to the tip. Players are named by first or last name, by number (1 to 5), by position (point, two guard, big), or by role (the shooter, whoever has the ball). If you don't name anyone, the ball handler does it. A defensive call made on offense waits for the next defensive trip. Calling it beats leaving them to it. Coaching is the only edge your team gets: left alone, the two teams are evenly matched and your five play into a slightly clogged floor. Moving people is what gets them open. A player you send to a spot, a cut, a post, a roll or a pop, a teammate you set a screen for, and everyone moving in a set play you call catches their defender a step slow, and the ball handler looks for them. A shot you call goes in more often than the same shot a player takes on their own, about 1.2 times as often on an open look and more on a tough one, but a contested shot or a heave from a bad spot still usually misses. Called passes are harder to pick off, a called drive gets a step on its man, a handler you're directing gets stripped less, and a called poke wins the ball more often. The lift lasts until the called action plays out, and the computer team never gets it. Players also play on their own between calls. A lob to someone near the rim becomes an alley-oop, and feeds into the post or to a cutter in traffic often go as bounce passes. The ball makes a sound each time it hits the floor, on dribbles, bounce passes and loose balls. Defenders box out and contest shots, and a defensive rebound or steal starts a fast break with the lanes filled. Every trip down spaces out in a fresh pace-and-space look, and set plays change who screens, the timing and the finish each time they run. Passes are thrown on the move and thrown crisply, with long ones zipped harder so they don't hang, and players only throw a long cross-court pass to someone wide open. The passer keeps moving and often cuts or relocates after letting it go, and passes lead a running teammate so they catch it in stride. There are no backcourt violations because the ball never goes back over halfcourt. A handler past the midline stays there, and if you call a pass to a teammate still in the backcourt, the handler holds it until that player gets up the floor. There are no double dribbles either. Once a player starts dribbling they keep it alive, even standing still, and after they pick it up (say, with a pump fake) they plant and pass or shoot. Sixty-four courts share the Pocket Neighborhoods art direction: College, Blacktop, Arena, Gym, Warehouse, Rooftop, School, Sportcourt, Backyard, Driveway, Boardwalk, Carrier, Junkyard, Night, Cage, Sandlot, Hangar, Haunt, Museum, Carnival, Underpass, Toybox, Helipad, Arcade, Alley, Culdesac, Volcano, Pirate, Startup, Bedroom, Moonbase, Mine, Mountain, Raft, Marigold, Desert, Rec, Rucker, Paris, Fieldhouse, Showtime, Aquarium, Cafe, Amusement, Garden, Cave, Factory, Farm, Forest, Mechanic, Island, Skatepark, Pump, Bullring, Mall, Construction, Harbor, Port, Wall, Range, Zoo, Bunker, Forum, Park. Each visit starts on a random court. Home-screen arrows or Left/Right and A/D browse; R chooses a different random court. The one-word name below the court hides at Start Game. Court can also be changed in Info. ?court= followed by one of these IDs opens a specific court: college, blacktop, arena, practice, warehouse, rooftop, school, sportcourt, backyard, driveway, boardwalk, carrier, junkyard, night, cage, sandlot, hangar, haunt, museum, carnival, underpass, toybox, helipad, arcade, alley, culdesac, volcano, pirate, startup, bedroom, moonbase, mine, mountain, raft, marigold, desert, rec, rucker, paris, fieldhouse, showtime, aquarium, cafe, amusement, garden, cave, factory, farm, forest, mechanic, island, skatepark, pump, bullring, mall, construction, harbor, port, wall, range, zoo, bunker, forum, park. ?sound= remains supported as an alias. All settings use the same playable court dimensions, line layout, rim and backboard geometry, player behavior and rules. Location changes are aesthetic: surfaces, colors, scenery and spectators. Players remain minimal and handless. College evokes the interior of the University of Maryland's Xfinity Center in muted red, gold and dark tones without school branding or flags. Arena evokes Ball Arena with a much denser crowd. Park draws on Copenhaver Park in Potomac, Maryland: gray asphalt, pale lines, black supports, mature trees and a neighborhood park setting. Cage evokes New York's West 4th Street courts with blue pavement, gray keys, tall enclosing fences and close spectators. Boardwalk evokes Venice Beach with a blue concrete court, sand, palms and beach spectators. The other scenes range from a humble one-car Driveway to Sportcourt's extravagant mansion, from a paper-storage Warehouse to a technology Startup, and from Colorado's Mountain and Mine to the fantasy Moonbase and Volcano. Rec draws on La Familia Recreation Center's warm earth tones; Rucker on Harlem streetball; Paris on Pigalle's colorful urban court; Fieldhouse on a vintage college gym; Showtime on a 1970s arena. Every setting has an audience suited to its scale. Settings share existing sound kits; new venue-specific recordings are deferred. Original loose backboard and rattle sounds remain outdoors; indoor uses tighter edits, not a verified glass recording. Clip edges fade gently, ambience crossfades, and the mix lowers while the coach speaks. The final screen shows a box score for the game and career averages by position, kept in your browser's localStorage. Right-click your side of the scorebug to name your team. It plays like an arcade game. The scorebug has a 14-second shot clock that flashes red under five, and the screen edges flash on the horn. Points pop up out of the hoop, hang a beat and sink away. A make can go in clean, off the glass or rattle around the rim. Dunks, blocks and steals freeze the action for a split second, and dunks shake the screen. Slow motion, on a dunk or the last shots of a one-possession finish, pushes the camera in on the ball. A shot you called that goes in glows gold, with a burst at the rim and a louder cheer. The crowd follows the game, getting louder as a close one gets late and quieter in a blowout. Whoever the call lands on nods as their bubble pops up. A step-back or euro step can leave a defender wobbling, with shake lines on both sides. Reduced-motion settings turn off the freeze, the shake and the rising points. Some moves are just for fun, and only you can call them. The players never pick them on their own, and none beats the plain play. They take longer or carry more risk. - Spin move: the handler spins away from the defender and keeps driving. It can shake the defender like a step-back, or the handler can lose the ball. - Step-back three: the handler hops back behind the arc and shoots a three. It's a harder shot than taking the two. - Moon ball: a shot thrown way up in the air. It goes in less often than a normal shot. - Off the glass: the handler throws it off the backboard to a teammate at the rim, or to themselves ("off the glass to myself"), for an alley-oop. Most of them carom away loose. - Oop pass: a lob that the receiver catches in the air and passes on before landing. - Around the world: the ball swings around the perimeter to every teammate in turn. - Backflip: a player without the ball does a backflip, just because. "Everybody backflip" works too. - Slide: a player slides feet first and leans back, toward a loose ball if there is one. It reaches a loose ball about as well as a dive. - Off the heazy: the handler bounces the ball off the nearest defender's head, AND1 style, and catches it again, or sends it on to a teammate ("off the heazy to 4"). The defender sees stars but isn't slowed, and a little over half come back. - Hesitation ("hesi"): the handler stops dead mid-drive and sits back like it's a pull-up, then goes again. The dribble stays alive. - Bank it: the shot goes off the glass when it goes in, at the same odds as any other shot. - Granny shot: an underhand shot from the hip that barely leaves the floor. It goes in a little less often. - Shimmy: a player wiggles side to side, with or without the ball. "Everybody dance" works too. - Get the crowd up: the crowd gets loud and everyone without the ball bounces along. The hop never helps on a rebound. ## Calls it understands - Actions: shoot, drive, pass, kick, lob, bounce pass, give and go, post up, cut, screen, roll, pop, iso, layup, dunk, jump, dive for a loose ball, pump fake, step-back, fadeaway, euro step, hand off, and the showtime moves above (off the heazy, spin move, step-back three, moon ball, off the glass, oop pass, around the world, backflip, slide, hesi, bank it, granny shot, shimmy, get the crowd up) - Spots: corner, wing, slot, top, elbow, the nail, block, dunker spot, short corner, paint, baseline, left, right, near, far - Team: push the pace, slow it down, spread the floor, crash the boards, box out, get back, milk the clock, reset - Defense: press, flop or take a charge, poke at the ball, double team, triple team, trap, pressure, deny, face guard, switch, sag, pack the paint, 2-3 zone, 1-3-1, 3-2, box and one, triangle and two, man to man - Plays: pick and roll, pick and pop, Spain, horns, Chicago, hammer, floppy, zipper, Iverson cut, flex, backdoor, triangle, elevator doors, stagger, ram, drag screen, handoff (dribble handoff) Examples of loose phrasing it handles: "hit the big fella", "swing it to the two guard and let him cook", "four scoot over a hair", "next time down give them the three two". A pass to a spot, like "kick it to the corner", goes to whichever teammate is standing there, or to the open man if nobody is. Players can be named by role ("the big man", "the point guard", "the shooting guard") as well as by number or name. Cheering and chatter like "nice shot baby" or "come on ref" is ignored. Calls can chain. "Shoot from the corner or pass to the four, then alley oop" walks the handler to the corner and shoots if he's open, or hits #4, who throws the lob to the big. Steps run in order, an "or" is decided when the moment comes, and "if they double you, kick it out" waits for the double. Several players can get orders in one breath, like "two to the corner, three to the wing, five post up". ## URL options - `?pace=0.7` slows players and passes. The default is 0.85, and the range is 0.4 to 1.3. - `?speed=1` sets how fast the whole game runs, clocks included. The default is 0.7, well under real time, so there's room to finish a call. The range is 0.4 to 1.5. - Speech recognition runs on your machine when Chrome has its English language pack, which cuts latency. The game downloads the pack when you press Start Game, if Chrome offers it. `?ondevice=1` downloads it on page load, and `?ondevice=0` uses Google's servers instead. - `?vad=0.018` sets the voice threshold for timing how fast a call lands. Raise it in a loud room. - `?vadgate=200` waits until you pause before sending a loose call to the AI, so a long sentence goes once. It's off by default and can make a loose call land a little later. - `?kits=white,black` picks the home and away jersey colors instead of dealing them at random. Pairs that look alike are ignored. - `?debug` shows frame rate, how fast the last call landed, whether the AI that reads loose calls is connected, and how many requests it got this game. ## Requirements - Chrome or Edge, because the game uses the Web Speech API. - A microphone. Typing works too: start typing anywhere on the page. - `Space` or `Esc` pauses. Hold `Shift` for slow motion.