I was still thinking about the various considerations that would go into a Shark Tank Deal Calculator, and ended up wondering if Claude could sort this out for me.
So I told Claude to make me a game, and here’s what it came up with.
You can play the Shark Tank 8-bit Game here
Screenshots



Calculations
The game allows the user to choose a business that has some predefined metrics, then choose how much money they will ask the sharks and for how much equity. After that, those numbers are fed through the script as to whether the sharks are interested or not, and they get to see for what new amounts. The user can reject all the offers, or choose one to say yes to. There’s no counter-offer round.
What’s missing is the ability for the business owner to compare all the offers.
Instead, this game focuses on what calculations the sharks are making when determining whether they want to do a deal with the player. One of the things they calculate is what the business is making and where it should be valued compared to the ask. Here’s a snippet from Kevin’s logic if (multiple > 10) {, in which he decides he’ll do a royalty deal.
if (multiple > 10) {
// Might counter with a royalty deal
const royaltyPerUnit = (business.retailPrice * 0.10).toFixed(2);
return {
decision: 'counter',
offerAmount: ask,
offerEquity: 0, // royalty instead
royaltyPerUnit: parseFloat(royaltyPerUnit),
lines: [
`Your valuation of ${fmt$(valuation)} is completely delusional.`,
`I'm not going to give you ${fmt$(ask)} for ${fmtPct(equity)} of nothing.`,
`But here's what I will do — ${fmt$(ask)} as a loan...`,
`...with a royalty of ${fmt$('$' + royaltyPerUnit)} per unit until I get ${fmt$(ask * 2)} back.`,
`That's my offer. Take it or leave it.`,
],
};
}
And here’s a little bit that shows some of Barbara’s thinking:
// Barbara goes out if the founder seems overconfident (high valuation, low traction)
const multiple = revenueMultiple(valuation, business.annualRevenue);
if (multiple > 12) {
return {
decision: 'out',
offerAmount: null, offerEquity: null,
lines: [
`I've backed a lot of entrepreneurs. The ones who succeed are humble.`,
`That valuation tells me you're not. I'm out.`,
],
};
}
You can view all the Shark logic in this file: /shark-tank-game-8bit/src/engine/SharkLogic.js
Observations of what Claude works into the game
- Daymond name-drops FUBU whether he’s in or out. Also, though he has some of the wittiest lines in the show, this is sadly overlooked by Claude’s game.
- Claude captures the ‘hero’ line from Lori, and that she’ll blow things up on QVC.
- Kevin actually has some personality in the game - nicely done here.
- Barbara has an online reputation for going out for bizarre reasons, but this quirk wasn’t captured in the game.
- Mark Cuban just seems like he gives people what they ask for.
The prompt
If you’re interested, here’s part of the prompt I told Claude:
I envision the user first selecting a ‘business’ they want to represent from a pre-defined list, what dollar amount they want to ask, and what equity in the business they want to give up. The business will have stats (been in business for x amount of time, each item is sold for x amount retail but it cost me x to make, and if i wholesale, that’s for x amount). I envision once selections are made, the user is shown a topdown version of the shark tank set, with the user coming down the hallway from top of the screen and the view users have is the back of the chairs from slightly above of the 5 sharks. the player makes pitch, and then one by one we say shark characters answer how they would on tv.
The game turned out a heck of a lot better than I thought. It has the charm of a Nintendo game trying to capture the feel of the show and its characters into a limited number of bytes on a cartridge when no such constraint really exists.
If you find it interesting, let me know what you think. I’m on Bluesky and X - Contact Page.